Don't use uniqueMPgraphic for randomized graphics.
authorMatthijs Kooijman <matthijs@stdin.nl>
Wed, 30 Sep 2009 11:58:42 +0000 (13:58 +0200)
committerMatthijs Kooijman <matthijs@stdin.nl>
Wed, 30 Sep 2009 11:58:42 +0000 (13:58 +0200)
Since uniqueMPgraphics are only evaluated once for every set of variables
(width, height, etc.), every box with the same size is randomized in the
same way. Using useMPgraphics ensures that the graphics are redrawn every
time.

Utils/Lambda.tex

index 24230d8..1702355 100644 (file)
@@ -3,7 +3,7 @@
 % transformations.
 %
 
-\startuniqueMPgraphic{HLine}
+\startuseMPgraphic{HLine}
 path a, b;
 % Create a rectangle of the full size
 a := origin -- (\MPvar{width}, 0mm);
@@ -12,7 +12,7 @@ a := origin -- (\MPvar{width}, 0mm);
 % And draw it
 drawoptions (withpen pencircle scaled .75mm withcolor black) ;
 draw a; 
-\stopuniqueMPgraphic
+\stopuseMPgraphic
 
 % Draw a line with the given options. Accepts only the 'width' option. Be
 % careful that these are metapost options, so use \the\textwidth instead of
@@ -20,9 +20,9 @@ draw a;
 % \the\textwidth instead of 0.5\textwidth).
 \def\HLine[#1]%
   {\setupMPvariables[HLine][#1]%
-  \uniqueMPgraphic{HLine}}
+  \useMPgraphic{HLine}}
 
-\startuniqueMPgraphic{box}
+\startuseMPgraphic{box}
 path a, b;
 % Create a rectangle of the full size
 a := unitsquare xyscaled(\overlaywidth,\overlayheight);
@@ -31,9 +31,9 @@ b := a randomized (\overlaywidth / 25) ;
 % And draw it
 drawoptions (withpen pencircle scaled .75mm withcolor black) ;
 draw b; 
-\stopuniqueMPgraphic
+\stopuseMPgraphic
 
-\defineoverlay[box][\uniqueMPgraphic{box}]
+\defineoverlay[box][\useMPgraphic{box}]
 
 % Define \{start,stop}boxed with a nice metapost box around it.
 \defineframedtext[boxed][background=box,frame=off]