]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EMCAL/doc/figures/EMCalGeometryStructure.eps
remove/compress big figures
[u/mrichter/AliRoot.git] / EMCAL / doc / figures / EMCalGeometryStructure.eps
1 %!PS-Adobe-2.0 EPSF-2.0
2 %%Title: EMCalGeometryStructure.fig
3 %%Creator: fig2dev Version 3.2 Patchlevel 4
4 %%CreationDate: Fri Mar  1 16:24:34 2013
5 %%For: nilsen@ALICE00 (Bjorn S. Nilsen)
6 %%BoundingBox: 0 0 686 542
7 %%Magnification: 1.0000
8 %%EndComments
9 /MyAppDict 100 dict dup begin def
10 /$F2psDict 200 dict def
11 $F2psDict begin
12 $F2psDict /mtrx matrix put
13 /col-1 {0 setgray} bind def
14 /col0 {0.000 0.000 0.000 srgb} bind def
15 /col1 {0.000 0.000 1.000 srgb} bind def
16 /col2 {0.000 1.000 0.000 srgb} bind def
17 /col3 {0.000 1.000 1.000 srgb} bind def
18 /col4 {1.000 0.000 0.000 srgb} bind def
19 /col5 {1.000 0.000 1.000 srgb} bind def
20 /col6 {1.000 1.000 0.000 srgb} bind def
21 /col7 {1.000 1.000 1.000 srgb} bind def
22 /col8 {0.000 0.000 0.560 srgb} bind def
23 /col9 {0.000 0.000 0.690 srgb} bind def
24 /col10 {0.000 0.000 0.820 srgb} bind def
25 /col11 {0.530 0.810 1.000 srgb} bind def
26 /col12 {0.000 0.560 0.000 srgb} bind def
27 /col13 {0.000 0.690 0.000 srgb} bind def
28 /col14 {0.000 0.820 0.000 srgb} bind def
29 /col15 {0.000 0.560 0.560 srgb} bind def
30 /col16 {0.000 0.690 0.690 srgb} bind def
31 /col17 {0.000 0.820 0.820 srgb} bind def
32 /col18 {0.560 0.000 0.000 srgb} bind def
33 /col19 {0.690 0.000 0.000 srgb} bind def
34 /col20 {0.820 0.000 0.000 srgb} bind def
35 /col21 {0.560 0.000 0.560 srgb} bind def
36 /col22 {0.690 0.000 0.690 srgb} bind def
37 /col23 {0.820 0.000 0.820 srgb} bind def
38 /col24 {0.500 0.190 0.000 srgb} bind def
39 /col25 {0.630 0.250 0.000 srgb} bind def
40 /col26 {0.750 0.380 0.000 srgb} bind def
41 /col27 {1.000 0.500 0.500 srgb} bind def
42 /col28 {1.000 0.630 0.630 srgb} bind def
43 /col29 {1.000 0.750 0.750 srgb} bind def
44 /col30 {1.000 0.880 0.880 srgb} bind def
45 /col31 {1.000 0.840 0.000 srgb} bind def
46
47 end
48 save
49 newpath 0 542 moveto 0 0 lineto 686 0 lineto 686 542 lineto closepath clip newpath
50 -35.3 576.7 translate
51 1 -1 scale
52
53 % This junk string is used by the show operators
54 /PATsstr 1 string def
55 /PATawidthshow {        % cx cy cchar rx ry string
56   % Loop over each character in the string
57   {  % cx cy cchar rx ry char
58     % Show the character
59     dup                         % cx cy cchar rx ry char char
60     PATsstr dup 0 4 -1 roll put % cx cy cchar rx ry char (char)
61     false charpath              % cx cy cchar rx ry char
62     /clip load PATdraw
63     % Move past the character (charpath modified the
64     % current point)
65     currentpoint                        % cx cy cchar rx ry char x y
66     newpath
67     moveto                      % cx cy cchar rx ry char
68     % Reposition by cx,cy if the character in the string is cchar
69     3 index eq {                        % cx cy cchar rx ry
70       4 index 4 index rmoveto
71     } if
72     % Reposition all characters by rx ry
73     2 copy rmoveto              % cx cy cchar rx ry
74   } forall
75   pop pop pop pop pop           % -
76   currentpoint
77   newpath
78   moveto
79 } bind def
80 /PATcg {
81   7 dict dup begin
82     /lw currentlinewidth def
83     /lc currentlinecap def
84     /lj currentlinejoin def
85     /ml currentmiterlimit def
86     /ds [ currentdash ] def
87     /cc [ currentrgbcolor ] def
88     /cm matrix currentmatrix def
89   end
90 } bind def
91 % PATdraw - calculates the boundaries of the object and
92 % fills it with the current pattern
93 /PATdraw {                      % proc
94   save exch
95     PATpcalc                    % proc nw nh px py
96     5 -1 roll exec              % nw nh px py
97     newpath
98     PATfill                     % -
99   restore
100 } bind def
101 % PATfill - performs the tiling for the shape
102 /PATfill { % nw nh px py PATfill -
103   PATDict /CurrentPattern get dup begin
104     setfont
105     % Set the coordinate system to Pattern Space
106     PatternGState PATsg
107     % Set the color for uncolored pattezns
108     PaintType 2 eq { PATDict /PColor get PATsc } if
109     % Create the string for showing
110     3 index string              % nw nh px py str
111     % Loop for each of the pattern sources
112     0 1 Multi 1 sub {           % nw nh px py str source
113         % Move to the starting location
114         3 index 3 index         % nw nh px py str source px py
115         moveto                  % nw nh px py str source
116         % For multiple sources, set the appropriate color
117         Multi 1 ne { dup PC exch get PATsc } if
118         % Set the appropriate string for the source
119         0 1 7 index 1 sub { 2 index exch 2 index put } for pop
120         % Loop over the number of vertical cells
121         3 index                 % nw nh px py str nh
122         {                       % nw nh px py str
123           currentpoint          % nw nh px py str cx cy
124           2 index oldshow       % nw nh px py str cx cy
125           YStep add moveto      % nw nh px py str
126         } repeat                % nw nh px py str
127     } for
128     5 { pop } repeat
129   end
130 } bind def
131
132 % PATkshow - kshow with the current pattezn
133 /PATkshow {                     % proc string
134   exch bind                     % string proc
135   1 index 0 get                 % string proc char
136   % Loop over all but the last character in the string
137   0 1 4 index length 2 sub {
138                                 % string proc char idx
139     % Find the n+1th character in the string
140     3 index exch 1 add get      % string proc char char+1
141     exch 2 copy                 % strinq proc char+1 char char+1 char
142     % Now show the nth character
143     PATsstr dup 0 4 -1 roll put % string proc chr+1 chr chr+1 (chr)
144     false charpath              % string proc char+1 char char+1
145     /clip load PATdraw
146     % Move past the character (charpath modified the current point)
147     currentpoint newpath moveto
148     % Execute the user proc (should consume char and char+1)
149     mark 3 1 roll               % string proc char+1 mark char char+1
150     4 index exec                % string proc char+1 mark...
151     cleartomark                 % string proc char+1
152   } for
153   % Now display the last character
154   PATsstr dup 0 4 -1 roll put   % string proc (char+1)
155   false charpath                % string proc
156   /clip load PATdraw
157   neewath
158   pop pop                       % -
159 } bind def
160 % PATmp - the makepattern equivalent
161 /PATmp {                        % patdict patmtx PATmp patinstance
162   exch dup length 7 add         % We will add 6 new entries plus 1 FID
163   dict copy                     % Create a new dictionary
164   begin
165     % Matrix to install when painting the pattern
166     TilingType PATtcalc
167     /PatternGState PATcg def
168     PatternGState /cm 3 -1 roll put
169     % Check for multi pattern sources (Level 1 fast color patterns)
170     currentdict /Multi known not { /Multi 1 def } if
171     % Font dictionary definitions
172     /FontType 3 def
173     % Create a dummy encoding vector
174     /Encoding 256 array def
175     3 string 0 1 255 {
176       Encoding exch dup 3 index cvs cvn put } for pop
177     /FontMatrix matrix def
178     /FontBBox BBox def
179     /BuildChar {
180         mark 3 1 roll           % mark dict char
181         exch begin
182         Multi 1 ne {PaintData exch get}{pop} ifelse  % mark [paintdata]
183           PaintType 2 eq Multi 1 ne or
184           { XStep 0 FontBBox aload pop setcachedevice }
185           { XStep 0 setcharwidth } ifelse
186           currentdict           % mark [paintdata] dict
187           /PaintProc load       % mark [paintdata] dict paintproc
188         end
189         gsave
190           false PATredef exec true PATredef
191         grestore
192         cleartomark             % -
193     } bind def
194     currentdict
195   end                           % newdict
196   /foo exch                     % /foo newlict
197   definefont                    % newfont
198 } bind def
199 % PATpcalc - calculates the starting point and width/height
200 % of the tile fill for the shape
201 /PATpcalc {     % - PATpcalc nw nh px py
202   PATDict /CurrentPattern get begin
203     gsave
204         % Set up the coordinate system to Pattern Space
205         % and lock down pattern
206         PatternGState /cm get setmatrix
207         BBox aload pop pop pop translate
208         % Determine the bounding box of the shape
209         pathbbox                        % llx lly urx ury
210     grestore
211     % Determine (nw, nh) the # of cells to paint width and height
212     PatHeight div ceiling               % llx lly urx qh
213     4 1 roll                            % qh llx lly urx
214     PatWidth div ceiling                % qh llx lly qw
215     4 1 roll                            % qw qh llx lly
216     PatHeight div floor                 % qw qh llx ph
217     4 1 roll                            % ph qw qh llx
218     PatWidth div floor                  % ph qw qh pw
219     4 1 roll                            % pw ph qw qh
220     2 index sub cvi abs                 % pw ph qs qh-ph
221     exch 3 index sub cvi abs exch       % pw ph nw=qw-pw nh=qh-ph
222     % Determine the starting point of the pattern fill
223     %(px, py)
224     4 2 roll                            % nw nh pw ph
225     PatHeight mul                       % nw nh pw py
226     exch                                % nw nh py pw
227     PatWidth mul exch                   % nw nh px py
228   end
229 } bind def
230
231 % Save the original routines so that we can use them later on
232 /oldfill        /fill load def
233 /oldeofill      /eofill load def
234 /oldstroke      /stroke load def
235 /oldshow        /show load def
236 /oldashow       /ashow load def
237 /oldwidthshow   /widthshow load def
238 /oldawidthshow  /awidthshow load def
239 /oldkshow       /kshow load def
240
241 % These defs are necessary so that subsequent procs don't bind in
242 % the originals
243 /fill      { oldfill } bind def
244 /eofill    { oldeofill } bind def
245 /stroke    { oldstroke } bind def
246 /show      { oldshow } bind def
247 /ashow     { oldashow } bind def
248 /widthshow { oldwidthshow } bind def
249 /awidthshow { oldawidthshow } bind def
250 /kshow     { oldkshow } bind def
251 /PATredef {
252   MyAppDict begin
253     {
254     /fill { /clip load PATdraw newpath } bind def
255     /eofill { /eoclip load PATdraw newpath } bind def
256     /stroke { PATstroke } bind def
257     /show { 0 0 null 0 0 6 -1 roll PATawidthshow } bind def
258     /ashow { 0 0 null 6 3 roll PATawidthshow }
259     bind def
260     /widthshow { 0 0 3 -1 roll PATawidthshow }
261     bind def
262     /awidthshow { PATawidthshow } bind def
263     /kshow { PATkshow } bind def
264   } {
265     /fill   { oldfill } bind def
266     /eofill { oldeofill } bind def
267     /stroke { oldstroke } bind def
268     /show   { oldshow } bind def
269     /ashow  { oldashow } bind def
270     /widthshow { oldwidthshow } bind def
271     /awidthshow { oldawidthshow } bind def
272     /kshow  { oldkshow } bind def
273     } ifelse
274   end
275 } bind def
276 false PATredef
277 % Conditionally define setcmykcolor if not available
278 /setcmykcolor where { pop } {
279   /setcmykcolor {
280     1 sub 4 1 roll
281     3 {
282         3 index add neg dup 0 lt { pop 0 } if 3 1 roll
283     } repeat
284     setrgbcolor - pop
285   } bind def
286 } ifelse
287 /PATsc {                % colorarray
288   aload length          % c1 ... cn length
289     dup 1 eq { pop setgray } { 3 eq { setrgbcolor } { setcmykcolor
290   } ifelse } ifelse
291 } bind def
292 /PATsg {                % dict
293   begin
294     lw setlinewidth
295     lc setlinecap
296     lj setlinejoin
297     ml setmiterlimit
298     ds aload pop setdash
299     cc aload pop setrgbcolor
300     cm setmatrix
301   end
302 } bind def
303
304 /PATDict 3 dict def
305 /PATsp {
306   true PATredef
307   PATDict begin
308     /CurrentPattern exch def
309     % If it's an uncolored pattern, save the color
310     CurrentPattern /PaintType get 2 eq {
311       /PColor exch def
312     } if
313     /CColor [ currentrgbcolor ] def
314   end
315 } bind def
316 % PATstroke - stroke with the current pattern
317 /PATstroke {
318   countdictstack
319   save
320   mark
321   {
322     currentpoint strokepath moveto
323     PATpcalc                            % proc nw nh px py
324     clip newpath PATfill
325     } stopped {
326         (*** PATstroke Warning: Path is too complex, stroking
327           with gray) =
328     cleartomark
329     restore
330     countdictstack exch sub dup 0 gt
331         { { end } repeat } { pop } ifelse
332     gsave 0.5 setgray oldstroke grestore
333   } { pop restore pop } ifelse
334   newpath
335 } bind def
336 /PATtcalc {             % modmtx tilingtype PATtcalc tilematrix
337   % Note: tiling types 2 and 3 are not supported
338   gsave
339     exch concat                                 % tilingtype
340     matrix currentmatrix exch                   % cmtx tilingtype
341     % Tiling type 1 and 3: constant spacing
342     2 ne {
343         % Distort the pattern so that it occupies
344         % an integral number of device pixels
345         dup 4 get exch dup 5 get exch           % tx ty cmtx
346         XStep 0 dtransform
347         round exch round exch                   % tx ty cmtx dx.x dx.y
348         XStep div exch XStep div exch           % tx ty cmtx a b
349         0 YStep dtransform
350         round exch round exch                   % tx ty cmtx a b dy.x dy.y
351         YStep div exch YStep div exch           % tx ty cmtx a b c d
352         7 -3 roll astore                        % { a b c d tx ty }
353     } if
354   grestore
355 } bind def
356 /PATusp {
357   false PATredef
358   PATDict begin
359     CColor PATsc
360   end
361 } bind def
362
363 % crosshatch45
364 11 dict begin
365 /PaintType 1 def
366 /PatternType 1 def
367 /TilingType 1 def
368 /BBox [0 0 1 1] def
369 /XStep 1 def
370 /YStep 1 def
371 /PatWidth 1 def
372 /PatHeight 1 def
373 /Multi 2 def
374 /PaintData [
375   { clippath } bind
376   { 20 20 true [ 20 0 0 -20 0 20 ]
377         {<8020004050102088201104400a02800401000a02
378         8011044020882040501080200040501020882011
379         04400a02800401000a0280110440208820405010>}
380      imagemask } bind
381 ] def
382 /PaintProc {
383         pop
384         exec fill
385 } def
386 currentdict
387 end
388 /P6 exch def
389
390 % crosshatch lines
391 11 dict begin
392 /PaintType 1 def
393 /PatternType 1 def
394 /TilingType 1 def
395 /BBox [0 0 1 1] def
396 /XStep 1 def
397 /YStep 1 def
398 /PatWidth 1 def
399 /PatHeight 1 def
400 /Multi 2 def
401 /PaintData [
402   { clippath } bind
403   { 16 16 true [ 16 0 0 -16 0 16 ]
404         {<ffff111111111111ffff111111111111ffff111111111111
405         ffff111111111111>}
406      imagemask } bind
407 ] def
408 /PaintProc {
409         pop
410         exec fill
411 } def
412 currentdict
413 end
414 /P11 exch def
415
416 /cp {closepath} bind def
417 /ef {eofill} bind def
418 /gr {grestore} bind def
419 /gs {gsave} bind def
420 /sa {save} bind def
421 /rs {restore} bind def
422 /l {lineto} bind def
423 /m {moveto} bind def
424 /rm {rmoveto} bind def
425 /n {newpath} bind def
426 /s {stroke} bind def
427 /sh {show} bind def
428 /slc {setlinecap} bind def
429 /slj {setlinejoin} bind def
430 /slw {setlinewidth} bind def
431 /srgb {setrgbcolor} bind def
432 /rot {rotate} bind def
433 /sc {scale} bind def
434 /sd {setdash} bind def
435 /ff {findfont} bind def
436 /sf {setfont} bind def
437 /scf {scalefont} bind def
438 /sw {stringwidth} bind def
439 /tr {translate} bind def
440 /tnt {dup dup currentrgbcolor
441   4 -2 roll dup 1 exch sub 3 -1 roll mul add
442   4 -2 roll dup 1 exch sub 3 -1 roll mul add
443   4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
444   bind def
445 /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
446   4 -2 roll mul srgb} bind def
447  /DrawEllipse {
448         /endangle exch def
449         /startangle exch def
450         /yrad exch def
451         /xrad exch def
452         /y exch def
453         /x exch def
454         /savematrix mtrx currentmatrix def
455         x y tr xrad yrad sc 0 0 1 startangle endangle arc
456         closepath
457         savematrix setmatrix
458         } def
459
460 /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
461 /$F2psEnd {$F2psEnteredState restore end} def
462
463 $F2psBegin
464 10 setmiterlimit
465 0 slj 0 slc
466  0.06000 0.06000 sc
467 %
468 % Fig objects follow
469 %
470
471 % here starts figure with depth 60
472 % Polyline
473 7.500 slw
474 n 600 600 m 12000 600 l 12000 9600 l 600 9600 l
475  cp gs col6 1.00 shd ef gr gs col0 s gr 
476 % Polyline
477 n 900 1200 m 11700 1200 l 11700 9300 l 900 9300 l
478  cp gs col3 1.00 shd ef gr gs col0 s gr 
479 /Times-Roman ff 300.00 scf sf
480 6000 900 m
481 gs 1 -1 sc (ALIC) col0 sh gr
482 % Ellipse
483 n 4200 8775 150 150 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr
484
485 % Ellipse
486 n 4725 8775 150 150 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr
487
488 % Ellipse
489 n 5325 8775 150 150 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr
490
491 % Polyline
492 n 2475 1800 m 3750 1800 l 3750 9000 l 2475 9000 l
493  cp gs /PC [[0.00 1.00 0.00] [0.00 0.00 0.00]] def
494 15.00 15.00 sc P11 [16 0 0 -16 165.00 120.00] PATmp PATsp ef gr PATusp gs col0 s gr 
495 % Polyline
496 n 10275 1800 m 11550 1800 l 11550 9000 l 10275 9000 l
497  cp gs /PC [[0.00 1.00 0.00] [0.00 0.00 0.00]] def
498 15.00 15.00 sc P11 [16 0 0 -16 685.00 120.00] PATmp PATsp ef gr PATusp gs col0 s gr 
499 % Polyline
500 n 1125 1800 m 2400 1800 l 2400 9000 l 1125 9000 l
501  cp gs /PC [[0.00 1.00 0.00] [0.00 0.00 0.00]] def
502 15.00 15.00 sc P11 [16 0 0 -16 75.00 120.00] PATmp PATsp ef gr PATusp gs col0 s gr 
503 /Times-Roman ff 300.00 scf sf
504 6075 1500 m
505 gs 1 -1 sc (XEN1) col0 sh gr
506 % Polyline
507 n 3300 2175 m
508  5925 2550 l gs col0 s gr 
509 % Polyline
510 n 5925 2550 m 10200 2550 l 10200 6900 l 5925 6900 l
511  cp gs col4 1.00 shd ef gr gs col0 s gr 
512 % Polyline
513 n 3245 2235 m
514  5935 6889 l gs col0 s gr 
515 /Times-Roman ff 300.00 scf sf
516 2625 2100 m
517 gs 1 -1 sc (SMOD) col7 sh gr
518 /Times-Roman ff 300.00 scf sf
519 10500 2100 m
520 gs 1 -1 sc (SMOD) col7 sh gr
521 /Times-Roman ff 300.00 scf sf
522 1350 2100 m
523 gs 1 -1 sc (SMOD) col7 sh gr
524 % Polyline
525 n 6075 3000 m 9975 3000 l 9975 6675 l 6075 6675 l
526  cp gs col7 1.00 shd ef gr gs col0 s gr 
527 /Times-Roman ff 300.00 scf sf
528 7575 2850 m
529 gs 1 -1 sc (EMOD) col7 sh gr
530 /Times-Roman ff 300.00 scf sf
531 7725 3300 m
532 gs 1 -1 sc (SCM0) col0 sh gr
533 % Polyline
534 n 8175 3450 m 9900 3450 l 9900 6525 l 8175 6525 l
535  cp gs col6 1.00 shd ef gr gs col0 s gr 
536 % Polyline
537 n 6225 3450 m 7950 3450 l 7950 6525 l 6225 6525 l
538  cp gs col6 1.00 shd ef gr gs col0 s gr 
539 % Polyline
540 n 6300 5100 m 7875 5100 l 7875 6375 l 6300 6375 l
541  cp gs /PC [[0.00 1.00 1.00] [0.00 0.00 0.00]] def
542 15.00 15.00 sc P6 [16 0 0 -16 420.00 340.00] PATmp PATsp ef gr PATusp gs col0 s gr 
543 % Polyline
544 n 6300 3750 m 7875 3750 l 7875 5025 l 6300 5025 l
545  cp gs /PC [[0.00 1.00 1.00] [0.00 0.00 0.00]] def
546 15.00 15.00 sc P6 [16 0 0 -16 420.00 250.00] PATmp PATsp ef gr PATusp gs col0 s gr 
547 % Polyline
548 n 8250 3750 m 9825 3750 l 9825 5025 l 8250 5025 l
549  cp gs /PC [[0.00 1.00 1.00] [0.00 0.00 0.00]] def
550 15.00 15.00 sc P6 [16 0 0 -16 550.00 250.00] PATmp PATsp ef gr PATusp gs col0 s gr 
551 % Polyline
552 n 8250 5100 m 9825 5100 l 9825 6375 l 8250 6375 l
553  cp gs /PC [[0.00 1.00 1.00] [0.00 0.00 0.00]] def
554 15.00 15.00 sc P6 [16 0 0 -16 550.00 340.00] PATmp PATsp ef gr PATusp gs col0 s gr 
555 /Times-Roman ff 300.00 scf sf
556 6750 3675 m
557 gs 1 -1 sc (SCMY) col0 sh gr
558 /Times-Roman ff 300.00 scf sf
559 8550 3675 m
560 gs 1 -1 sc (SCMY) col0 sh gr
561 % Polyline
562 n 6885 7200 m 7605 7920 l 6885 8640 l 6165 7920 l
563  cp gs col1 1.00 shd ef gr gs col0 s gr 
564 /Times-Roman ff 300.00 scf sf
565 6750 4050 m
566 gs 1 -1 sc (SCMX) col0 sh gr
567 /Times-Roman ff 300.00 scf sf
568 8550 4050 m
569 gs 1 -1 sc (SCMX) col0 sh gr
570 /Times-Roman ff 300.00 scf sf
571 8550 5400 m
572 gs 1 -1 sc (SCMX) col0 sh gr
573 /Times-Roman ff 300.00 scf sf
574 6675 5400 m
575 gs 1 -1 sc (SCMX) col0 sh gr
576 /Times-Roman ff 300.00 scf sf
577 6603 8048 m
578 gs 1 -1 sc (PBTI) col7 sh gr
579 % here ends figure;
580
581 % here starts figure with depth 50
582 % Polyline
583 7.500 slw
584 n 6520 6035 m
585  6184 7950 l gs col0 s gr 
586 % Polyline
587 n 6630 6035 m
588  7613 7936 l gs col0 s gr 
589 % here ends figure;
590 $F2psEnd
591 rs
592 end
593 showpage