\documentclass[border=5mm]{standalone} \usepackage{luamplib} \begin{document} \mplibtextextlabel{enable} \begin{mplibcode} input tiling-ammann-procedures picture P[]; path ss, rr; ss = s scaled 36; rr = r scaled 48; dotlabeldiam := 2; P1 = image( square(0, point 0 of ss, point 2 of ss); dotlabel.ulft("$a$", point 0 of ss); dotlabel.urt ("$b$", point 2 of ss); ); P2 = image( draw ss dashed withdots scaled 1/4; square(1, point 0 of ss, point 2 of ss); ); P3 = image( drawarrow 20 left -- 20 right; label(P1, 50 left); label(P2, 50 right); ); P4 = image( rhomb(0, point 0 of rr, point 2 of rr); dotlabel.ulft("$a$", point 0 of rr); dotlabel.urt("$b$", point 2 of rr); ); P5 = image( draw rr dashed withdots scaled 1/4; rhomb(1, point 0 of rr, point 2 of rr); ); P6 = image( drawarrow 16 left -- 20 right; label(P4, 50 left); label(P5, 50 right); ); beginfig(1); label.lft(P6, 13 left); label.rt(P3, 13 right); endfig; \end{mplibcode} \end{document}