From 500caaeda74dd9c660279036293f4b2997cf0b03 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sat, 9 Sep 2017 09:42:37 +0200 Subject: Add vendor --- vendor/github.com/llgcode/ps/samples/snowflak.ps | 91 ++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 vendor/github.com/llgcode/ps/samples/snowflak.ps (limited to 'vendor/github.com/llgcode/ps/samples/snowflak.ps') diff --git a/vendor/github.com/llgcode/ps/samples/snowflak.ps b/vendor/github.com/llgcode/ps/samples/snowflak.ps new file mode 100644 index 0000000..3cfdbdf --- /dev/null +++ b/vendor/github.com/llgcode/ps/samples/snowflak.ps @@ -0,0 +1,91 @@ +%! +%% 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]== 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 dup == { + inwidth { + gsave + (NEWFLAKE)== + newflake + grestore + boxsize 0 translate + } repeat + boxsize inwidth mul neg boxsize translate +} repeat + + +showpage -- cgit v1.2.3