% % Labels point i of mypath with (start+i). % def test( expr mypath, start ) = draw mypath withcolor red; for i = 0 upto length mypath: dotlabel ( decimal( i + start ),point i of mypath ); endfor; enddef; % % Circles pic with a circle scaled s. % def scaledcircleit( expr pic, s ) = (unitcircle shifted (-0.5,-0.5) scaled s shifted 0.5[ llcorner( pic ), urcorner( pic )]) enddef; def widthofbox( expr b ) = (xpart( lrcorner( b ) ) - xpart( llcorner( b ) )) enddef; def heightofbox( expr b ) = (ypart( ulcorner( b ) ) - ypart( llcorner( b ) )) enddef; def centreofbox( expr b ) = (0.5[ ulcorner( b ), lrcorner( b ) ]) enddef;