%! %% Elizabeth D. Zwicky %% zwicky@erg.sri.com %% multiflake /newflake {/seed usertime def seed srand /strokecolor [rand 99 mod 100 div rand 99 mod 100 div 100 rand 22 mod sub 100 div] def /fillcolor [rand 99 mod 100 div 100 rand 22 mod sub 100 div rand 99 mod 100 div] def /eofillcolor [rand 99 mod 100 div rand 22 mod 100 div 100 rand 22 mod sub 100 div] def /colorfill {fillcolor aload pop setrgbcolor fill } def /colorstroke {strokecolor aload pop setrgbcolor stroke } def /eocolorfill {eofillcolor aload pop setrgbcolor eofill } def /arm {0 0 moveto 5 {3 {x y x y x y curveto} repeat} repeat seed srand 0 0 moveto 5 {3 {x neg y x neg y x neg y curveto} repeat} repeat seed srand } def newpath 0 0 moveto boxsize 0 rlineto 0 boxsize rlineto boxsize neg 0 rlineto 0 0 lineto rand 99 mod 100 div 100 rand 22 mod sub 100 div 100 rand 22 mod sub 100 div sethsbcolor fill seed srand boxsize 2 div boxsize 2 div translate %% If the device you are using can handle complex fills, replace the %% next three lines with: %% 6 {arm 60 rotate} repeat gsave colorfill grestore gsave eocolorfill grestore colorstroke %% %% This will be not only faster, but prettier. On a LaserWriter or a %% Tektronix Phaser II PS it gives a limitcheck. %% 6 {arm 60 rotate colorfill} repeat %% 6 {arm 60 rotate eocolorfill} repeat %% 6 {arm 60 rotate} repeat colorstroke } def 1 setlinewidth clippath pathbbox /ury exch def /urx exch def /lly exch def /llx exch def /minsize 250 def /pagewidth urx llx sub def /pageheight ury lly sub def /inwidth pagewidth minsize div def /inheight pageheight minsize div def /boxsize inwidth inheight gt {pagewidth inwidth truncate div} {pageheight inheight truncate div} ifelse def /inwidth pagewidth boxsize div cvi def /inheight pageheight boxsize div cvi def /x {rand 70 mod abs} def /y {rand 120 mod abs} def llx lly translate inheight { inwidth { gsave newflake grestore boxsize 0 translate } repeat boxsize inwidth mul neg boxsize translate } repeat showpage