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 24230d88b07733808ebef4bea85e285b49b7bfe6..1702355a03762dbf7190df03f686fccdc81fe6af 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]