Mercurial > hg > camir-aes2014
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 |