Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

arcs.ps 18 KB

You have to be logged in to leave a comment. Sign In
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
  1. %!PS-Adobe-3.0
  2. %%BoundingBox: 0 0 612 792
  3. %%HiResBoundingBox: 0 0 612 792
  4. %%Title: GMT v5.0.0_r9734:9735M [64-bit] Document from psxy
  5. %%Creator: GMT
  6. %%For: remko
  7. %%DocumentNeededResources: font Helvetica
  8. %%CreationDate: Fri Feb 17 09:47:41 2012
  9. %%LanguageLevel: 2
  10. %%DocumentData: Clean7Bit
  11. %%Orientation: Portrait
  12. %%Pages: 1
  13. %%EndComments
  14. %%BeginProlog
  15. 250 dict begin
  16. /! {bind def} bind def
  17. /# {load def}!
  18. /A /setgray #
  19. /B /setdash #
  20. /C /setrgbcolor #
  21. /D /rlineto #
  22. /E {dup stringwidth pop}!
  23. /F /fill #
  24. /G /rmoveto #
  25. /H /sethsbcolor #
  26. /I /setpattern #
  27. /K /setcmykcolor #
  28. /L /lineto #
  29. /M /moveto #
  30. /N /newpath #
  31. /P /closepath #
  32. /R /rotate #
  33. /S /stroke #
  34. /T /translate #
  35. /U /grestore #
  36. /V /gsave #
  37. /W /setlinewidth #
  38. /Y {findfont exch scalefont setfont}!
  39. /Z /show #
  40. /FP {true charpath flattenpath}!
  41. /MU {matrix setmatrix}!
  42. /MS {/SMat matrix currentmatrix def}!
  43. /MR {SMat setmatrix}!
  44. /edef {exch def}!
  45. /FS {/fc edef /fs {V fc F U} def}!
  46. /FQ {/fs {} def}!
  47. /O0 {/os {N} def}!
  48. /O1 {/os {P S} def}!
  49. /FO {fs os}!
  50. /Sa {M MS dup 0 exch G 0.726542528 mul -72 R dup 0 D 4 {72 R dup 0 D -144 R dup 0 D} repeat pop MR FO}!
  51. /Sb {M dup 0 D exch 0 exch D neg 0 D FO}!
  52. /SB {MS T /BoxR edef /BoxW edef /BoxH edef BoxR 0 M
  53. BoxW 0 BoxW BoxH BoxR arct BoxW BoxH 0 BoxH BoxR arct 0 BoxH 0 0 BoxR arct 0 0 BoxW 0 BoxR arct MR FO}!
  54. /Sc {N 3 -1 roll 0 360 arc FO}!
  55. /Sd {M 4 {dup} repeat 0 G neg dup dup D exch D D FO}!
  56. /Se {N MS T R scale 0 0 1 0 360 arc MR FO}!
  57. /Sg {M MS 22.5 R dup 0 exch G -22.5 R 0.765366865 mul dup 0 D 6 {-45 R dup 0 D} repeat pop MR FO}!
  58. /Sh {M MS dup 0 G -120 R dup 0 D 4 {-60 R dup 0 D} repeat pop MR FO}!
  59. /Si {M MS dup neg 0 exch G 60 R 1.732050808 mul dup 0 D 120 R 0 D MR FO}!
  60. /Sj {M MS R dup -2 div 2 index -2 div G dup 0 D exch 0 exch D neg 0 D MR FO}!
  61. /Sn {M MS dup 0 exch G -36 R 1.175570505 mul dup 0 D 3 {-72 R dup 0 D} repeat pop MR FO}!
  62. /Sp {N 3 -1 roll 0 360 arc F}!
  63. /SP {M {D} repeat FO}!
  64. /Sr {M dup -2 div 2 index -2 div G dup 0 D exch 0 exch D neg 0 D FO}!
  65. /SR {MS T /BoxR edef /BoxW edef /BoxH edef BoxR BoxW -2 div BoxH -2 div T BoxR 0 M
  66. BoxW 0 BoxW BoxH BoxR arct BoxW BoxH 0 BoxH BoxR arct 0 BoxH 0 0 BoxR arct 0 0 BoxW 0 BoxR arct MR FO}!
  67. /Ss {M 1.414213562 mul dup dup dup -2 div dup G 0 D 0 exch D neg 0 D FO}!
  68. /St {M MS dup 0 exch G -60 R 1.732050808 mul dup 0 D -120 R 0 D MR FO}!
  69. /SV {0 exch M 0 D D D D D 0 D FO}!
  70. /Sv {0 0 M D D 0 D D D D D 0 D D FO}!
  71. /Sw {2 copy M 5 2 roll arc FO}!
  72. /Sx {M 1.414213562 mul 5 {dup} repeat -2 div dup G D neg 0 G neg D S}!
  73. /Sy {M dup 0 exch G dup -2 mul dup 0 exch D S}!
  74. /S+ {M dup 0 G dup -2 mul dup 0 D exch dup G 0 exch D S}!
  75. /S- {M dup 0 G dup -2 mul dup 0 D S}!
  76. /sw {stringwidth pop}!
  77. /sh {V MU 0 0 M FP pathbbox N 4 1 roll pop pop pop U}!
  78. /sd {V MU 0 0 M FP pathbbox N pop pop exch pop U}!
  79. /sH {V MU 0 0 M FP pathbbox N exch pop exch sub exch pop U}!
  80. /sb {E exch sh}!
  81. /bl {}!
  82. /bc {E -2 div 0 G}!
  83. /br {E neg 0 G}!
  84. /ml {dup 0 exch sh -2 div G}!
  85. /mc {dup E -2 div exch sh -2 div G}!
  86. /mr {dup E neg exch sh -2 div G}!
  87. /tl {dup 0 exch sh neg G}!
  88. /tc {dup E -2 div exch sh neg G}!
  89. /tr {dup E neg exch sh neg G}!
  90. /mx {2 copy lt {exch} if pop}!
  91. /PSL_xorig 0 def /PSL_yorig 0 def
  92. /TM {2 copy T PSL_yorig add /PSL_yorig edef PSL_xorig add /PSL_xorig edef}!
  93. /PSL_reencode {findfont dup length dict begin
  94. {1 index /FID ne {def}{pop pop} ifelse} forall
  95. exch /Encoding edef currentdict end definefont pop
  96. }!
  97. /PSL_eps_begin {
  98. /PSL_eps_state save def
  99. /PSL_dict_count countdictstack def
  100. /PSL_op_count count 1 sub def
  101. userdict begin
  102. /showpage {} def
  103. 0 setgray 0 setlinecap 1 setlinewidth
  104. 0 setlinejoin 10 setmiterlimit [] 0 setdash newpath
  105. /languagelevel where
  106. {pop languagelevel 1 ne {false setstrokeadjust false setoverprint} if} if
  107. }!
  108. /PSL_eps_end {
  109. count PSL_op_count sub {pop} repeat
  110. countdictstack PSL_dict_count sub {end} repeat
  111. PSL_eps_state restore
  112. }!
  113. /PSL_transp {
  114. /.setopacityalpha where {pop .setblendmode .setopacityalpha}{
  115. /pdfmark where {pop [ /BM exch /CA exch dup /ca exch /SetTransparency pdfmark}
  116. {pop pop} ifelse} ifelse
  117. }!
  118. /Standard+_Encoding [
  119. /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  120. /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  121. /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef
  122. /.notdef /threequarters /threesuperior /trademark /twosuperior /yacute /ydieresis /zcaron
  123. /space /exclam /quotedbl /numbersign /dollar /percent /ampersand /quoteright
  124. /parenleft /parenright /asterisk /plus /comma /hyphen /period /slash
  125. /zero /one /two /three /four /five /six /seven
  126. /eight /nine /colon /semicolon /less /equal /greater /question
  127. /at /A /B /C /D /E /F /G
  128. /H /I /J /K /L /M /N /O
  129. /P /Q /R /S /T /U /V /W
  130. /X /Y /Z /bracketleft /backslash /bracketright /asciicircum /underscore
  131. /quoteleft /a /b /c /d /e /f /g
  132. /h /i /j /k /l /m /n /o
  133. /p /q /r /s /t /u /v /w
  134. /x /y /z /braceleft /bar /braceright /asciitilde /florin
  135. /Atilde /Ccedilla /Eth /Lslash /Ntilde /Otilde /Scaron /Thorn
  136. /Yacute /Ydieresis /Zcaron /atilde /brokenbar /ccedilla /copyright /degree
  137. /divide /eth /logicalnot /lslash /minus /mu /multiply /ntilde
  138. /onehalf /onequarter /onesuperior /otilde /plusminus /registered /scaron /thorn
  139. /.notdef /exclamdown /cent /sterling /fraction /yen /florin /section
  140. /currency /quotesingle /quotedblleft /guillemotleft /guilsinglleft /guilsinglright /fi /fl
  141. /Aacute /endash /dagger /daggerdbl /periodcentered /Acircumflex /paragraph /bullet
  142. /quotesinglbase /quotedblbase /quotedblright /guillemotright /ellipsis /perthousand /Adieresis /questiondown
  143. /Agrave /grave /acute /circumflex /tilde /macron /breve /dotaccent
  144. /dieresis /Eacute /ring /cedilla /Ecircumflex /hungarumlaut /ogonek /caron
  145. /emdash /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute
  146. /Ocircumflex /Odieresis /Ograve /Uacute /Ucircumflex /Udieresis /Ugrave /aacute
  147. /acircumflex /AE /adieresis /ordfeminine /agrave /eacute /ecircumflex /edieresis
  148. /egrave /Oslash /OE /ordmasculine /iacute /icircumflex /idieresis /igrave
  149. /oacute /ae /ocircumflex /odieresis /ograve /dotlessi /uacute /ucircumflex
  150. /udieresis /oslash /oe /germandbls /ugrave /Aring /aring /ydieresis
  151. ] def
  152. /PSL_font_encode 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 39 array astore def
  153. /F0 {/Helvetica Y}!
  154. /F1 {/Helvetica-Bold Y}!
  155. /F2 {/Helvetica-Oblique Y}!
  156. /F3 {/Helvetica-BoldOblique Y}!
  157. /F4 {/Times-Roman Y}!
  158. /F5 {/Times-Bold Y}!
  159. /F6 {/Times-Italic Y}!
  160. /F7 {/Times-BoldItalic Y}!
  161. /F8 {/Courier Y}!
  162. /F9 {/Courier-Bold Y}!
  163. /F10 {/Courier-Oblique Y}!
  164. /F11 {/Courier-BoldOblique Y}!
  165. /F12 {/Symbol Y}!
  166. /F13 {/AvantGarde-Book Y}!
  167. /F14 {/AvantGarde-BookOblique Y}!
  168. /F15 {/AvantGarde-Demi Y}!
  169. /F16 {/AvantGarde-DemiOblique Y}!
  170. /F17 {/Bookman-Demi Y}!
  171. /F18 {/Bookman-DemiItalic Y}!
  172. /F19 {/Bookman-Light Y}!
  173. /F20 {/Bookman-LightItalic Y}!
  174. /F21 {/Helvetica-Narrow Y}!
  175. /F22 {/Helvetica-Narrow-Bold Y}!
  176. /F23 {/Helvetica-Narrow-Oblique Y}!
  177. /F24 {/Helvetica-Narrow-BoldOblique Y}!
  178. /F25 {/NewCenturySchlbk-Roman Y}!
  179. /F26 {/NewCenturySchlbk-Italic Y}!
  180. /F27 {/NewCenturySchlbk-Bold Y}!
  181. /F28 {/NewCenturySchlbk-BoldItalic Y}!
  182. /F29 {/Palatino-Roman Y}!
  183. /F30 {/Palatino-Italic Y}!
  184. /F31 {/Palatino-Bold Y}!
  185. /F32 {/Palatino-BoldItalic Y}!
  186. /F33 {/ZapfChancery-MediumItalic Y}!
  187. /F34 {/ZapfDingbats Y}!
  188. /F35 {/Ryumin-Light-EUC-H Y}!
  189. /F36 {/Ryumin-Light-EUC-V Y}!
  190. /F37 {/GothicBBB-Medium-EUC-H Y}!
  191. /F38 {/GothicBBB-Medium-EUC-V Y}!
  192. /PSL_pathtextdict 26 dict def
  193. /PSL_pathtext
  194. {PSL_pathtextdict begin
  195. /textheight exch def
  196. /just exch def
  197. /offset exch def
  198. /str exch def
  199. /pathdist 0 def
  200. /setdist offset def
  201. /charcount 0 def
  202. /justy just 4 idiv textheight mul 2 div neg def
  203. V flattenpath
  204. {movetoproc} {linetoproc}
  205. {curvetoproc} {closepathproc}
  206. pathforall
  207. U N
  208. end
  209. } def
  210. PSL_pathtextdict begin
  211. /movetoproc
  212. { /newy exch def /newx exch def
  213. /firstx newx def /firsty newy def
  214. /ovr 0 def
  215. newx newy transform
  216. /cpy exch def /cpx exch def
  217. } def
  218. /linetoproc
  219. { /oldx newx def /oldy newy def
  220. /newy exch def /newx exch def
  221. /dx newx oldx sub def
  222. /dy newy oldy sub def
  223. /dist dx dup mul dy dup mul add sqrt def
  224. dist 0 ne
  225. { /dsx dx dist div ovr mul def
  226. /dsy dy dist div ovr mul def
  227. oldx dsx add oldy dsy add transform
  228. /cpy exch def /cpx exch def
  229. /pathdist pathdist dist add def
  230. {setdist pathdist le
  231. {charcount str length lt
  232. {setchar} {exit} ifelse}
  233. { /ovr setdist pathdist sub def
  234. exit}
  235. ifelse
  236. } loop
  237. } if
  238. } def
  239. /curvetoproc
  240. { (ERROR: No curveto's after flattenpath!)
  241. print
  242. } def
  243. /closepathproc
  244. {firstx firsty linetoproc
  245. firstx firsty movetoproc
  246. } def
  247. /setchar
  248. { /char str charcount 1 getinterval def
  249. /charcount charcount 1 add def
  250. /charwidth char stringwidth pop def
  251. V cpx cpy itransform T
  252. dy dx atan R
  253. 0 justy M
  254. char show
  255. 0 justy neg G
  256. currentpoint transform
  257. /cpy exch def /cpx exch def
  258. U /setdist setdist charwidth add def
  259. } def
  260. end
  261. /PSL_curved_text_labels
  262. { /bits exch def
  263. /PSL_clippath bits 1 and 1 eq def
  264. /PSL_placetext bits 2 and 0 eq def
  265. /PSL_strokeline bits 4 and 4 eq def
  266. /PSL_firstcall bits 32 and 32 eq def
  267. /PSL_lastcall bits 64 and 64 eq def
  268. /PSL_fillbox bits 128 and 128 eq def
  269. /PSL_drawbox bits 256 and 256 eq def
  270. /PSL_n1 PSL_n 1 sub def
  271. /PSL_m1 PSL_m 1 sub def
  272. /PSL_usebox PSL_fillbox PSL_drawbox or def
  273. PSL_CT_calcstringwidth
  274. PSL_CT_calclinedist
  275. PSL_CT_addcutpoints
  276. PSL_clippath PSL_firstcall and
  277. {clipsave N clippath} if
  278. PSL_setlinepen
  279. /PSL_nn1 PSL_nn 1 sub def
  280. /n 0 def
  281. /k 0 def
  282. /j 0 def
  283. /PSL_seg 0 def
  284. /PSL_xp PSL_nn array def
  285. /PSL_yp PSL_nn array def
  286. PSL_xp 0 PSL_xx 0 get put
  287. PSL_yp 0 PSL_yy 0 get put
  288. 1 1 PSL_nn1
  289. { /i exch def
  290. /node_type PSL_kind i get def
  291. /j j 1 add def
  292. PSL_xp j PSL_xx i get put
  293. PSL_yp j PSL_yy i get put
  294. node_type 1 eq
  295. {n 0 eq
  296. {PSL_CT_drawline}
  297. { PSL_CT_reversepath
  298. PSL_CT_textline} ifelse
  299. /j 0 def
  300. PSL_xp j PSL_xx i get put
  301. PSL_yp j PSL_yy i get put
  302. } if
  303. } for
  304. n 0 eq {PSL_CT_drawline} if
  305. PSL_lastcall
  306. {PSL_clippath
  307. {PSL_clip} if N
  308. } if
  309. } def
  310. /PSL_CT_textline
  311. {PSL_placetext
  312. {PSL_clippath
  313. {PSL_CT_clippath} {PSL_CT_placelabel} ifelse
  314. } if
  315. /n 0 def /k k 1 add def PSL_setlinepen
  316. } def
  317. /PSL_CT_calcstringwidth
  318. { /PSL_width PSL_m array def
  319. 0 1 PSL_m1
  320. { /i exch def
  321. PSL_width i PSL_str i get stringwidth pop put
  322. } for
  323. } def
  324. /PSL_CT_calclinedist
  325. { /PSL_newx PSL_x 0 get def
  326. /PSL_newy PSL_y 0 get def
  327. /dist 0.0 def
  328. /PSL_dist PSL_n array def
  329. PSL_dist 0 0.0 put
  330. 1 1 PSL_n1
  331. { /i exch def
  332. /PSL_oldx PSL_newx def
  333. /PSL_oldy PSL_newy def
  334. /PSL_newx PSL_x i get def
  335. /PSL_newy PSL_y i get def
  336. /dx PSL_newx PSL_oldx sub def
  337. /dy PSL_newy PSL_oldy sub def
  338. /dist dist dx dx mul dy dy mul add sqrt add def
  339. PSL_dist i dist put
  340. } for
  341. } def
  342. /PSL_CT_addcutpoints
  343. { /k 0 def
  344. /PSL_nc PSL_m 2 mul 1 add def
  345. /PSL_cuts PSL_nc array def
  346. /PSL_nc1 PSL_nc 1 sub def
  347. 0 1 PSL_m1
  348. { /i exch def
  349. /dist PSL_dist PSL_node i get get def
  350. /halfwidth PSL_width i get 2 div PSL_gap_x add def
  351. PSL_cuts k dist halfwidth sub put
  352. /k k 1 add def
  353. PSL_cuts k dist halfwidth add put
  354. /k k 1 add def
  355. } for
  356. PSL_cuts k 100000.0 put
  357. /PSL_nn PSL_n PSL_m 2 mul add def
  358. /PSL_xx PSL_nn array def
  359. /PSL_yy PSL_nn array def
  360. /PSL_kind PSL_nn array def
  361. /j 0 def
  362. /k 0 def
  363. /dist 0.0 def
  364. 0 1 PSL_n1
  365. { /i exch def
  366. /last_dist dist def
  367. /dist PSL_dist i get def
  368. k 1 PSL_nc1
  369. { /kk exch def
  370. /this_cut PSL_cuts kk get def
  371. dist this_cut gt
  372. { /ds dist last_dist sub def
  373. /f ds 0.0 eq {0.0} {dist this_cut sub ds div} ifelse def
  374. /i1 i 0 eq {0} {i 1 sub} ifelse def
  375. PSL_xx j PSL_x i get dup PSL_x i1 get sub f mul sub put
  376. PSL_yy j PSL_y i get dup PSL_y i1 get sub f mul sub put
  377. PSL_kind j 1 put
  378. /j j 1 add def
  379. /k k 1 add def
  380. } if
  381. } for
  382. dist PSL_cuts k get le
  383. {PSL_xx j PSL_x i get put PSL_yy j PSL_y i get put
  384. PSL_kind j 0 put
  385. /j j 1 add def
  386. } if
  387. } for
  388. } def
  389. /PSL_CT_reversepath
  390. {PSL_xp j get PSL_xp 0 get lt
  391. {0 1 j 2 idiv
  392. { /left exch def
  393. /right j left sub def
  394. /tmp PSL_xp left get def
  395. PSL_xp left PSL_xp right get put
  396. PSL_xp right tmp put
  397. /tmp PSL_yp left get def
  398. PSL_yp left PSL_yp right get put
  399. PSL_yp right tmp put
  400. } for
  401. } if
  402. } def
  403. /PSL_CT_placelabel
  404. {
  405. PSL_usebox
  406. {PSL_CT_clippath
  407. PSL_fillbox
  408. {V PSL_setboxrgb fill U} if
  409. PSL_drawbox
  410. {PSL_setboxpen S} if N
  411. } if
  412. PSL_settxtrgb PSL_CT_placeline PSL_str k get PSL_gap_x PSL_just PSL_height PSL_pathtext
  413. } def
  414. /PSL_CT_clippath
  415. {
  416. /H PSL_height 2 div PSL_gap_y add def
  417. /xoff j 1 add array def
  418. /yoff j 1 add array def
  419. /angle 0 def
  420. 0 1 j {
  421. /ii exch def
  422. /x PSL_xp ii get def
  423. /y PSL_yp ii get def
  424. ii 0 eq {
  425. /x1 PSL_xp 1 get def
  426. /y1 PSL_yp 1 get def
  427. /dx x1 x sub def
  428. /dy y1 y sub def
  429. }
  430. { /i1 ii 1 sub def
  431. /x1 PSL_xp i1 get def
  432. /y1 PSL_yp i1 get def
  433. /dx x x1 sub def
  434. /dy y y1 sub def
  435. } ifelse
  436. dx 0.0 ne dy 0.0 ne and
  437. { /angle dy dx atan 90 add def} if
  438. /sina angle sin def
  439. /cosa angle cos def
  440. xoff ii H cosa mul put
  441. yoff ii H sina mul put
  442. } for
  443. PSL_xp 0 get xoff 0 get add PSL_yp 0 get yoff 0 get add M
  444. 1 1 j {
  445. /ii exch def
  446. PSL_xp ii get xoff ii get add PSL_yp ii get yoff ii get add L
  447. } for
  448. j -1 0 {
  449. /ii exch def
  450. PSL_xp ii get xoff ii get sub PSL_yp ii get yoff ii get sub L
  451. } for P
  452. } def
  453. /PSL_CT_drawline
  454. {
  455. /str 20 string def
  456. PSL_strokeline
  457. {PSL_CT_placeline PSL_setlinepen S} if
  458. /PSL_seg PSL_seg 1 add def
  459. /n 1 def
  460. } def
  461. /PSL_CT_placeline
  462. {PSL_xp 0 get PSL_yp 0 get M
  463. 1 1 j { /ii exch def PSL_xp ii get PSL_yp ii get L} for
  464. } def
  465. /PSL_straight_text_labels
  466. {
  467. /bits exch def
  468. /PSL_clippath bits 1 and 0 eq def
  469. /PSL_rounded bits 16 and 16 eq def
  470. /PSL_fillbox bits 128 and 128 eq def
  471. /PSL_drawbox bits 256 and 256 eq def
  472. /PSL_m1 PSL_m 1 sub def
  473. /PSL_justx PSL_just 4 mod 1 sub 2 div neg def
  474. /PSL_justy PSL_just 4 idiv PSL_height mul 2 div neg def
  475. /PSL_usebox PSL_fillbox PSL_drawbox or def
  476. PSL_clippath
  477. {PSL_ST_clippath}
  478. {PSL_usebox {PSL_ST_clippath} if
  479. PSL_ST_placelabel
  480. } ifelse
  481. } def
  482. /PSL_ST_placelabel
  483. {PSL_settxtrgb
  484. 0 1 PSL_m1
  485. { /k exch def
  486. /xp PSL_txt_x k get def
  487. /yp PSL_txt_y k get def
  488. V PSL_txt_x k get PSL_txt_y k get T
  489. PSL_angle k get R
  490. /BoxW PSL_str k get stringwidth pop def
  491. BoxW PSL_justx mul PSL_justy M
  492. PSL_str k get show
  493. U
  494. } for
  495. } def
  496. /PSL_ST_clippath
  497. {N
  498. PSL_usebox not {clipsave clippath} if
  499. PSL_rounded {PSL_ST_clippath_round} {PSL_ST_clippath_rect} ifelse
  500. PSL_usebox
  501. {PSL_fillbox
  502. {V PSL_setboxrgb fill U} if
  503. PSL_drawbox
  504. {PSL_setboxpen S} if N
  505. }
  506. {PSL_clip
  507. } ifelse
  508. N
  509. } def
  510. /PSL_ST_clippath_rect
  511. {
  512. /BoxH PSL_height PSL_gap_y 2 mul add def
  513. /DelY BoxH BoxH 0 3 array astore def
  514. 0 1 PSL_m1
  515. { /k exch def
  516. /xp PSL_txt_x k get def
  517. /yp PSL_txt_y k get def
  518. /MAT PSL_angle k get matrix R def
  519. /BoxW PSL_str k get stringwidth pop PSL_gap_x 2 mul add def
  520. /x0 0 BoxW PSL_justx mul add def
  521. /y0 0 PSL_justy add PSL_gap_y sub def
  522. /DelX 0 BoxW BoxW 3 array astore def
  523. x0 y0 MAT transform
  524. /dy exch def /dx exch def
  525. xp dx add yp dy add M
  526. 0 1 2
  527. {
  528. /ii exch def
  529. x0 DelX ii get add y0 DelY ii get add MAT transform
  530. /dy exch def /dx exch def
  531. xp dx add yp dy add L
  532. } for P
  533. } for
  534. } def
  535. /PSL_ST_clippath_round
  536. {
  537. /PSL_justy2 PSL_just 4 idiv 2 div neg def
  538. /BoxR PSL_gap_x PSL_gap_y lt {PSL_gap_x} {PSL_gap_y} ifelse def
  539. /BoxH PSL_height PSL_gap_y 2 mul add def
  540. /y0 PSL_height PSL_gap_y 2 mul add PSL_justy2 mul def
  541. 0 1 PSL_m1
  542. { /k exch def
  543. /xp PSL_txt_x k get def
  544. /yp PSL_txt_y k get def
  545. /BoxW PSL_str k get stringwidth pop PSL_gap_x 2 mul add def
  546. /x0 BoxW PSL_justx mul def
  547. xp yp T PSL_angle k get R x0 y0 T
  548. BoxR 0 M
  549. BoxW 0 BoxW BoxH BoxR arct BoxW BoxH 0 BoxH BoxR arct 0 BoxH 0 0 BoxR arct 0 0 BoxW 0 BoxR arct P
  550. x0 neg y0 neg T PSL_angle k get neg R xp neg yp neg T
  551. } for
  552. } def
  553. /PSL_nclip 0 def
  554. /PSL_clip {clip /PSL_nclip PSL_nclip 1 add def} def
  555. /PSL_eoclip {eoclip /PSL_nclip PSL_nclip 1 add def} def
  556. /PSL_cliprestore {cliprestore /PSL_nclip PSL_nclip 1 sub def} def
  557. %%EndProlog
  558. %%BeginSetup
  559. /PSLevel /languagelevel where {pop languagelevel} {1} ifelse def
  560. PSLevel 1 gt { << /PageSize [612 792] /ImagingBBox null >> setpagedevice } if
  561. %%EndSetup
  562. %%Page: 1 1
  563. %%BeginPageSetup
  564. V 0.06 0.06 scale
  565. %%EndPageSetup
  566. /PSL_page_xsize 10200 def
  567. /PSL_page_ysize 13200 def
  568. 0 A
  569. FQ
  570. O0
  571. 2400 2400 TM
  572. % PostScript produced by:
  573. %%GMT: psxy -R0/4/0/4 -Jx1i -P -W5p -S1i -X2i -Y2i
  574. %%PROJ: xy 0.00000000 4.00000000 0.00000000 4.00000000 0.000 4.000 0.000 4.000 +xy +a=6378137.000 +b=6356752.314245
  575. 0 setlinecap
  576. 0 setlinejoin
  577. 3.32551 setmiterlimit
  578. clipsave
  579. 0 0 M
  580. 4800 0 D
  581. 0 4800 D
  582. -4800 0 D
  583. PSL_eoclip N
  584. 83 W
  585. O1
  586. 600 1200 1200 Sc
  587. 960 480 0 1200 3840 Se
  588. {0 1 0 C} FS
  589. 50 W
  590. 0 0 1 C
  591. 600 -30 210 1200 2400 Sw
  592. /image7 {<~
  593. J085r3"QQ/#D3&N:q0=W*=mo0,#L=]_CZR^(aDnfdfMZSO$OnMLdX!9&;Wb!Obgqr3?XDSTQ3RcRMRB-b+`pt]Xg$UO3F9'5
  594. TJJs3!N-PZb_=k4$[1MO>KQ])NdUf;^o*=KgpbqUB.CeTZ(Z9@'8"\'l$1#c!72NW0SACAsm;7^d%~>
  595. /LZWDecode filter} def
  596. /pattern7 {V 768 768 scale
  597. << /PaintType 1 /PatternType 1 /TilingType 1 /BBox [0 0 1 1] /XStep 1 /YStep 1 /PaintProc
  598. {begin [/Indexed /DeviceRGB 1 <FFFFFF00FF00>] setcolorspace
  599. << /ImageType 1 /Decode [0 1] /Width 64 /Height 64 /BitsPerComponent 1
  600. /ImageMatrix [64 0 0 -64 0 64] /DataSource image7
  601. >> image end}
  602. >> matrix makepattern U} def
  603. {pattern7 I} FS
  604. 83 W
  605. 1 0 0 C
  606. 600 30 90 1200 3600 Sw
  607. {1 0 0 C} FS
  608. 0 A
  609. 1200 600 -45 3600 1200 Se
  610. /image12 {<~
  611. J,is'-mSKes+A0qkQC`<*.M?,i\<1bJ3Og.#MoIUgiOV4"3;`QGMis(-NV$E:e4!_'+L<rU/O%A?>UO>:1LRIjGHYrPJLY2W
  612. )Pr&'T,@i1$J7i7jsToj`9U-`a^io:$2&HeFn5STMVIa8SoAS8=@o'eB,rrGu1-_V3X@M>%MAT<i6_RKmJ/dITW7E86spm=G
  613. Y\*f?!pe8RR_:TQNhSR/r,#?D@,7h7<';P<_A~>
  614. /LZWDecode filter} def
  615. /pattern12 {V 768 768 scale
  616. << /PaintType 1 /PatternType 1 /TilingType 1 /BBox [0 0 1 1] /XStep 1 /YStep 1 /PaintProc
  617. {begin [/Indexed /DeviceRGB 1 <FFFF00FF0000>] setcolorspace
  618. << /ImageType 1 /Decode [0 1] /Width 64 /Height 64 /BitsPerComponent 1
  619. /ImageMatrix [64 0 0 -64 0 64] /DataSource image12
  620. >> image end}
  621. >> matrix makepattern U} def
  622. {pattern12 I} FS
  623. O0
  624. 1200 600 45 3600 3600 Se
  625. PSL_cliprestore
  626. currentdict /image7 undef
  627. currentdict /pattern7 undef
  628. currentdict /image12 undef
  629. currentdict /pattern12 undef
  630. %%PageTrailer
  631. U
  632. showpage
  633. %%Trailer
  634. end
  635. %%EOF
Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...