/[PAMELA software]/PamCut/doc/Doxygen/latex/classPamCutCollection.eps
ViewVC logotype

Annotation of /PamCut/doc/Doxygen/latex/classPamCutCollection.eps

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations) (download) (as text)
Wed May 27 13:30:01 2009 UTC (15 years, 6 months ago) by pam-fi
Branch: MAIN
Branch point for: DEV
File MIME type: application/postscript
Initial revision

1 pam-fi 1.1 %!PS-Adobe-2.0 EPSF-2.0
2     %%Title: ClassName
3     %%Creator: Doxygen
4     %%CreationDate: Time
5     %%For:
6     %Magnification: 1.00
7     %%Orientation: Portrait
8     %%BoundingBox: 0 0 500 328.947
9     %%Pages: 0
10     %%BeginSetup
11     %%EndSetup
12     %%EndComments
13    
14     % ----- variables -----
15    
16     /boxwidth 0 def
17     /boxheight 40 def
18     /fontheight 24 def
19     /marginwidth 10 def
20     /distx 20 def
21     /disty 40 def
22     /boundaspect 1.52 def % aspect ratio of the BoundingBox (width/height)
23     /boundx 500 def
24     /boundy boundx boundaspect div def
25     /xspacing 0 def
26     /yspacing 0 def
27     /rows 5 def
28     /cols 2 def
29     /scalefactor 0 def
30     /boxfont /Times-Roman findfont fontheight scalefont def
31    
32     % ----- procedures -----
33    
34     /dotted { [1 4] 0 setdash } def
35     /dashed { [5] 0 setdash } def
36     /solid { [] 0 setdash } def
37    
38     /max % result = MAX(arg1,arg2)
39     {
40     /a exch def
41     /b exch def
42     a b gt {a} {b} ifelse
43     } def
44    
45     /xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2)
46     {
47     0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max
48     } def
49    
50     /cw % boxwidth = MAX(boxwidth, stringwidth(arg1))
51     {
52     /str exch def
53     /boxwidth boxwidth str stringwidth pop max def
54     } def
55    
56     /box % draws a box with text `arg1' at grid pos (arg2,arg3)
57     { gsave
58     2 setlinewidth
59     newpath
60     exch xspacing mul xoffset add
61     exch yspacing mul
62     moveto
63     boxwidth 0 rlineto
64     0 boxheight rlineto
65     boxwidth neg 0 rlineto
66     0 boxheight neg rlineto
67     closepath
68     dup stringwidth pop neg boxwidth add 2 div
69     boxheight fontheight 2 div sub 2 div
70     rmoveto show stroke
71     grestore
72     } def
73    
74     /mark
75     { newpath
76     exch xspacing mul xoffset add boxwidth add
77     exch yspacing mul
78     moveto
79     0 boxheight 4 div rlineto
80     boxheight neg 4 div boxheight neg 4 div rlineto
81     closepath
82     eofill
83     stroke
84     } def
85    
86     /arrow
87     { newpath
88     moveto
89     3 -8 rlineto
90     -6 0 rlineto
91     3 8 rlineto
92     closepath
93     eofill
94     stroke
95     } def
96    
97     /out % draws an output connector for the block at (arg1,arg2)
98     {
99     newpath
100     exch xspacing mul xoffset add boxwidth 2 div add
101     exch yspacing mul boxheight add
102     /y exch def
103     /x exch def
104     x y moveto
105     0 disty 2 div rlineto
106     stroke
107     1 eq { x y disty 2 div add arrow } if
108     } def
109    
110     /in % draws an input connector for the block at (arg1,arg2)
111     {
112     newpath
113     exch xspacing mul xoffset add boxwidth 2 div add
114     exch yspacing mul disty 2 div sub
115     /y exch def
116     /x exch def
117     x y moveto
118     0 disty 2 div rlineto
119     stroke
120     1 eq { x y disty 2 div add arrow } if
121     } def
122    
123     /hedge
124     {
125     exch xspacing mul xoffset add boxwidth 2 div add
126     exch yspacing mul boxheight 2 div sub
127     /y exch def
128     /x exch def
129     newpath
130     x y moveto
131     boxwidth 2 div distx add 0 rlineto
132     stroke
133     1 eq
134     { newpath x boxwidth 2 div distx add add y moveto
135     -8 3 rlineto
136     0 -6 rlineto
137     8 3 rlineto
138     closepath
139     eofill
140     stroke
141     } if
142     } def
143    
144     /vedge
145     {
146     /ye exch def
147     /ys exch def
148     /xs exch def
149     newpath
150     xs xspacing mul xoffset add boxwidth 2 div add dup
151     ys yspacing mul boxheight 2 div sub
152     moveto
153     ye yspacing mul boxheight 2 div sub
154     lineto
155     stroke
156     } def
157    
158     /conn % connections the blocks from col `arg1' to `arg2' of row `arg3'
159     {
160     /ys exch def
161     /xe exch def
162     /xs exch def
163     newpath
164     xs xspacing mul xoffset add boxwidth 2 div add
165     ys yspacing mul disty 2 div sub
166     moveto
167     xspacing xe xs sub mul 0
168     rlineto
169     stroke
170     } def
171    
172     % ----- main ------
173    
174     boxfont setfont
175     1 boundaspect scale
176     (PamCutCollection) cw
177     (PamCut) cw
178     (BlindCutCollection) cw
179     (SmartCollection) cw
180     (SmartBlindCollection) cw
181     (VerboseCollection) cw
182     (VerboseBlindCollection) cw
183     /boxwidth boxwidth marginwidth 2 mul add def
184     /xspacing boxwidth distx add def
185     /yspacing boxheight disty add def
186     /scalefactor
187     boxwidth cols mul distx cols 1 sub mul add
188     boxheight rows mul disty rows 1 sub mul add boundaspect mul
189     max def
190     boundx scalefactor div boundy scalefactor div scale
191    
192     % ----- classes -----
193    
194     (PamCutCollection) 0.5 3 box
195     (PamCut) 0.5 4 box
196     (BlindCutCollection) 0 2 box
197     (SmartCollection) 1 2 box
198     (SmartBlindCollection) 0 1 box
199     (VerboseCollection) 1 1 box
200     (VerboseBlindCollection) 0 0 box
201    
202     % ----- relations -----
203    
204     solid
205     0 0.5 3 out
206     solid
207     1 0.5 4 in
208     solid
209     1 0.5 2.25 out
210     solid
211     0 1 3 conn
212     solid
213     0 0 2.75 in
214     solid
215     1 0 1.25 out
216     solid
217     0 1 2.75 in
218     solid
219     1 1 1.25 out
220     solid
221     0 0 1.75 in
222     solid
223     1 0 0.25 out
224     solid
225     0 1 1.75 in
226     solid
227     0 0 0.75 in

  ViewVC Help
Powered by ViewVC 1.1.23