comparison toolboxes/graph_visualisation/lib/lefty/lefty.psp @ 0:e9a9cd732c1e tip

first hg version after svn
author wolffd
date Tue, 10 Feb 2015 15:05:51 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:e9a9cd732c1e
1 /BOX {
2 /boxy1 exch def /boxx1 exch def /boxy0 exch def /boxx0 exch def
3 boxx0 boxy0 moveto boxx1 boxy0 lineto
4 boxx1 boxy1 lineto boxx0 boxy1 lineto
5 closepath
6 } def
7 /SCP { stroke initclip newpath BOX clip newpath } def
8 /CL { stroke setrgbcolor } def
9 /DO { stroke } def
10 /NP { newpath } def
11 /FI { fill } def
12 /LI { moveto lineto } def
13 /CT { curveto } def
14 /AR {
15 /ang2 exch def /ang1 exch def
16 /radius exch def /y2x exch def /cy exch def /cx exch def
17 gsave
18 cx cy translate 1 y2x scale 0 0 radius ang1 ang2 arc stroke
19 grestore
20 } def
21 /ARF {
22 /ang2 exch def /ang1 exch def
23 /radius exch def /y2x exch def /cy exch def /cx exch def
24 gsave
25 cx cy translate 1 y2x scale 0 0 radius ang1 ang2 arc fill
26 grestore
27 } def
28 /TXT {
29 /texth exch def
30 /textf exch def
31 /textn exch def
32 /texts exch def
33 /textyj exch def /texty exch def
34 /textxj exch def /textx exch def
35 textf findfont texth scalefont dup setfont
36 /FontBBox get 1 get 1000 div texth mul /textbl exch def
37 /textth texth textn mul def /texttw 0 def
38 0 1 textn 1 sub {
39 texts exch get 0 get stringwidth pop
40 dup texttw gt { /texttw exch def } { pop } ifelse
41 } for
42 textyj (b) eq { /ty texty textth add textbl add def } if
43 textyj (d) eq { /ty texty textth add def } if
44 textyj (c) eq { /ty texty textth 2 div add def } if
45 textyj (u) eq { /ty texty def } if
46 /ty ty textbl sub def
47 textxj (l) eq { /tx textx def } if
48 textxj (c) eq { /tx textx texttw 2 div sub def } if
49 textxj (r) eq { /tx textx texttw sub def } if
50 0 1 textn 1 sub {
51 /ty ty texth sub def
52 texts exch get dup 0 get /ts exch def 1 get /tj exch def
53 tj (l) eq { tx ty moveto ts show } if
54 tj (n) eq {
55 tx texttw ts stringwidth pop sub 2 div add ty moveto ts show
56 } if
57 tj (r) eq {
58 tx texttw ts stringwidth pop sub add ty moveto ts show
59 } if
60 } for
61 } def
62
63 /colorimage where {
64 pop
65 } {
66 /bwproc {
67 rgbproc dup length 3 idiv string 0 3 0 5 -1 roll {
68 add 2 1 roll 1 sub dup 0 eq {
69 pop 3 idiv 3 -1 roll dup 4 -1 roll
70 dup 3 1 roll 5 -1 roll put 1 add 3 0
71 } {
72 2 1 roll
73 } ifelse
74 } forall
75 pop pop pop
76 } def
77 /colorimage {
78 pop pop /rgbproc exch def {bwproc} image
79 } bind def
80 } ifelse