annotate presen/fig/perl6nqp.eps @ 77:2327c951dfb9

update
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Mon, 18 Feb 2019 19:46:14 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
77
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 %!PS-Adobe-3.0 EPSF-3.0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 %%HiResBoundingBox: 0.000000 0.000000 460.000000 307.000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 %APL_DSC_Encoding: UTF8
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 %APLProducer: (Version 10.14.2 (Build 18C54) Quartz PS Context)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 %%Title: (Unknown)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 %%Creator: (Unknown)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 %%CreationDate: (Unknown)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 %%For: (Unknown)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 %%DocumentData: Clean7Bit
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 %%LanguageLevel: 2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 %%Pages: 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 %%BoundingBox: 0 0 460 307
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 %%EndComments
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 %%BeginProlog
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 %%BeginFile: cg-pdf.ps
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 %%Copyright: Copyright 2000-2004 Apple Computer Incorporated.
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 %%Copyright: All Rights Reserved.
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 currentpacking true setpacking
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 /cg_md 141 dict def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 cg_md begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 /L3? languagelevel 3 ge def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 /bd{bind def}bind def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 /ld{load def}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 /xs{exch store}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 /xd{exch def}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
26 /cmmtx matrix def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 mark
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 /sc/setcolor
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 /scs/setcolorspace
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
30 /dr/defineresource
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
31 /fr/findresource
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
32 /T/true
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
33 /F/false
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
34 /d/setdash
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
35 /w/setlinewidth
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
36 /J/setlinecap
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
37 /j/setlinejoin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
38 /M/setmiterlimit
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
39 /i/setflat
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
40 /rc/rectclip
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
41 /rf/rectfill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
42 /rs/rectstroke
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
43 /f/fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44 /f*/eofill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 /sf/selectfont
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 /s/show
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 %/as/ashow
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 /xS/xshow
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
49 /yS/yshow
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 /xyS/xyshow
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 /S/stroke
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
52 /m/moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
53 /l/lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
54 /c/curveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 /h/closepath
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 /n/newpath
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
57 /q/gsave
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58 /Q/grestore
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 counttomark 2 idiv
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 %dup (number of ld's = )print == flush % *** how many
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
61 {ld}repeat pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
62 /SC{ % CSname
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
63 /ColorSpace fr scs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
65 /sopr /setoverprint where{pop/setoverprint}{/pop}ifelse ld
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
66 /soprm /setoverprintmode where{pop/setoverprintmode}{/pop}ifelse ld
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
67 /cgmtx matrix def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
68 /sdmtx{cgmtx currentmatrix pop}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
69 /CM {cgmtx setmatrix}bd % pop the ctm: our gstate ctm on host is now identity
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
70 /cm {cmmtx astore CM concat}bd % reset the matrix and then concat
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
71 /W{clip newpath}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
72 /W*{eoclip newpath}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
73
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
74 statusdict begin product end dup (HP) anchorsearch{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
75 pop pop pop % pop off the search results
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
76 true
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 pop % previous search result
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
79 (hp) anchorsearch{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
80 pop pop true
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
82 pop false
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
83 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
84 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
85
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
86 { % HP is the product: we use this method of stroking because of a bug in their clone printers with certain T3 fonts
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
87 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
88 { % charCode Wx Wy
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
89 pop pop % charCode
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
90 (0)dup 0 4 -1 roll put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
91 F charpath
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
92 }cshow
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
93 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
94 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
95 {F charpath}
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
96 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
97 /cply exch bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
98 /cps {cply stroke}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
99 /pgsave 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
100 /bp{/pgsave save store}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
101 /ep{pgsave restore showpage}def % dont' bind
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
102 /re{4 2 roll m 1 index 0 rlineto 0 exch rlineto neg 0 rlineto h}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
103
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
104 /scrdict 10 dict def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
105 /scrmtx matrix def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
106 /patarray 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
107 /createpat{patarray 3 1 roll put}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
108 /makepat{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
109 scrmtx astore pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
110 gsave
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
111 initgraphics
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
112 CM
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
113 patarray exch get
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
114 scrmtx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
115 makepattern
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
116 grestore
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
117 setpattern
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
118 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
119
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
120 /cg_BeginEPSF{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
121 userdict save/cg_b4_Inc_state exch put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
122 userdict/cg_endepsf/cg_EndEPSF load put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
123 count userdict/cg_op_count 3 -1 roll put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
124 countdictstack dup array dictstack userdict/cg_dict_array 3 -1 roll put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
125 3 sub{end}repeat
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
126 /showpage {} def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
127 0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
128 10 setmiterlimit [] 0 setdash newpath
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
129 false setstrokeadjust false setoverprint % don't use F
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
130 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
131 /cg_EndEPSF{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
132 countdictstack 3 sub { end } repeat
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
133 cg_dict_array 3 1 index length 3 sub getinterval
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
134 {begin}forall
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
135 count userdict/cg_op_count get sub{pop}repeat
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
136 userdict/cg_b4_Inc_state get restore
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
137 F setpacking
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
138 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
139
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
140 /cg_biproc{currentfile/RunLengthDecode filter}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
141 /cg_aiproc{currentfile/ASCII85Decode filter/RunLengthDecode filter}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
142 /ImageDataSource 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
143 L3?{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
144 /cg_mibiproc{pop pop/ImageDataSource{cg_biproc}def}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
145 /cg_miaiproc{pop pop/ImageDataSource{cg_aiproc}def}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
146 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
147 /ImageBandMask 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
148 /ImageBandData 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
149 /cg_mibiproc{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
150 string/ImageBandMask xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
151 string/ImageBandData xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
152 /ImageDataSource{[currentfile/RunLengthDecode filter dup ImageBandMask/readstring cvx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
153 /pop cvx dup ImageBandData/readstring cvx/pop cvx]cvx bind}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
154 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
155 /cg_miaiproc{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
156 string/ImageBandMask xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
157 string/ImageBandData xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
158 /ImageDataSource{[currentfile/ASCII85Decode filter/RunLengthDecode filter
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
159 dup ImageBandMask/readstring cvx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
160 /pop cvx dup ImageBandData/readstring cvx/pop cvx]cvx bind}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
161 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
162 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
163 /imsave 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
164 /BI{save/imsave xd mark}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
165 /EI{imsave restore}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
166 /ID{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
167 counttomark 2 idiv
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
168 dup 2 add % leave room for imagetype and imagematrix
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
169 dict begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
170 {def} repeat
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
171 pop % remove mark
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
172 /ImageType 1 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
173 /ImageMatrix[Width 0 0 Height neg 0 Height]def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
174 currentdict dup/ImageMask known{ImageMask}{F}ifelse exch
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
175 % currentdict on stack
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
176 L3?{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
177 dup/MaskedImage known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
178 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
179 pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
180 <<
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
181 /ImageType 3
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
182 /InterleaveType 2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
183 /DataDict currentdict
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
184 /MaskDict
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
185 << /ImageType 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
186 /Width Width
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
187 /Height Height
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
188 /ImageMatrix ImageMatrix
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
189 /BitsPerComponent 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
190 /Decode [0 1]
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
191 currentdict/Interpolate known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
192 {/Interpolate Interpolate}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
193 >>
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
194 >>
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
195 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
196 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
197 exch
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
198 {imagemask}{image}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
199 end % pop imagedict from dict stack
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
200 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
201
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
202 /cguidfix{statusdict begin mark version end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
203 {cvr}stopped{cleartomark 0}{exch pop}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
204 2012 lt{dup findfont dup length dict begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
205 {1 index/FID ne 2 index/UniqueID ne and
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
206 {def} {pop pop} ifelse}forall
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
207 currentdict end definefont pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
208 }{pop}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
209 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
210 /t_array 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
211 /t_i 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
212 /t_c 1 string def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
213 /x_proc{ % x y
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
214 exch t_array t_i get add exch moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
215 /t_i t_i 1 add store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
216 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
217 /y_proc{ % x y
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
218 t_array t_i get add moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
219 /t_i t_i 1 add store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
220 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
221 /xy_proc{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
222 % x y
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
223 t_array t_i 2 copy 1 add get 3 1 roll get
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
224 4 -1 roll add 3 1 roll add moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
225 /t_i t_i 2 add store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
226 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
227 /sop 0 def % don't bind sop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
228 /cp_proc/x_proc ld % default moveto proc is for xwidths only
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
229 /base_charpath % string array
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
230 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
231 /t_array xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
232 /t_i 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
233 { % char
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
234 t_c 0 3 -1 roll put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
235 currentpoint
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
236 t_c cply sop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
237 cp_proc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
238 }forall
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
239 /t_array 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
240 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
241 /sop/stroke ld % default sop is stroke. Done here so we don't bind in /base_charpath
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
242
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
243 % default sop is stroke
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
244 /nop{}def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
245 /xsp/base_charpath ld
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
246 /ysp{/cp_proc/y_proc ld base_charpath/cp_proc/x_proc ld}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
247 /xysp{/cp_proc/xy_proc ld base_charpath/cp_proc/x_proc ld}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
248 /xmp{/sop/nop ld /cp_proc/x_proc ld base_charpath/sop/stroke ld}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
249 /ymp{/sop/nop ld /cp_proc/y_proc ld base_charpath/sop/stroke ld}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
250 /xymp{/sop/nop ld /cp_proc/xy_proc ld base_charpath/sop/stroke ld}bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
251 /refnt{ % newname encoding fontname
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
252 findfont dup length dict copy dup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
253 /Encoding 4 -1 roll put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
254 definefont pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
255 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
256 /renmfont{ % newname fontname
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
257 findfont dup length dict copy definefont pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
258 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
259
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
260 L3? dup dup{save exch}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
261
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
262 % languagelevel2 ONLY code goes here
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
263
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
264 /Range 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
265 /DataSource 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
266 /val 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
267 /nRange 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
268 /mulRange 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
269 /d0 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
270 /r0 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
271 /di 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
272 /ri 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
273 /a0 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
274 /a1 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
275 /r1 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
276 /r2 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
277 /dx 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
278 /Nsteps 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
279 /sh3tp 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
280 /ymax 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
281 /ymin 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
282 /xmax 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
283 /xmin 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
284
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
285 /setupFunEval % funDict -- % this calculates and sets up a function dict for evaulation.
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
286 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
287 begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
288 /nRange Range length 2 idiv store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
289 /mulRange % precompute the range data needed to map a sample value from the table to a range value
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
290 % this data looks like [ range0mul range0min range1mul range1min ... rangeN-1mul rangeN-1min ]
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
291 [
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
292 0 1 nRange 1 sub
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
293 { % index
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
294 2 mul/nDim2 xd % 2*dimension# we are dealing with
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
295 Range nDim2 get % ymin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
296 Range nDim2 1 add get % ymin ymax
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
297 1 index sub % ymin (ymax-ymin)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
298 % xmin = 0, xmax = 255 (2^bitspersample - 1)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
299 255 div % ymin (ymax-ymin)/(xmax - xmin)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
300 exch % (ymax-ymin)/(xmax - xmin) ymin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
301 }for
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
302 ]store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
303 end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
304 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
305
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
306 /FunEval % val1 fundict -> comp1 comp2 ... compN
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
307 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
308 begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
309 % the value passed in is the base index into the table
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
310 nRange mul /val xd % compute the actual index to the table
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
311 % since there are nRange entries per base index
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
312 0 1 nRange 1 sub
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
313 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
314 dup 2 mul/nDim2 xd % dim
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
315 val % base value to use to do our lookup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
316 add DataSource exch get % lookedupval
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
317 mulRange nDim2 get mul % lookedupval*(ymax-ymin)/(xmax-xmin)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
318 mulRange nDim2 1 add get % lookedupval*(ymax-ymin)/(xmax-xmin) ymin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
319 add % interpolated result
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
320 }for % comp1 comp2 ... compN
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
321 end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
322 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
323
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
324 /max % a b -> max(a, b)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
325 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
326 2 copy lt
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
327 {exch pop}{pop}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
328 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
329
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
330 /sh2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
331 { % emulation of shading type 2. Assumes shading dictionary is top dictionary on the dict stack
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
332 /Coords load aload pop % x0 y0 x1 y1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
333 3 index 3 index translate % origin is now at beginning point of shading
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
334 % x0 y0 x1 y1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
335 3 -1 roll sub % x0 x1 y1-y0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
336 3 1 roll exch % y1-y0 x1 x0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
337 sub % y1-y0 x1-x0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
338 2 copy
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
339 dup mul exch dup mul add sqrt % length of segment between two points
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
340 dup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
341 scale
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
342 atan % atan (dy/dx)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
343 %dup (rotation angle = )print ==
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
344 rotate % now line between 0,0 and 1,0 is the line perpendicular to which the axial lines are drawn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
345
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
346 /Function load setupFunEval % may need to setup function dictionary by calling setupFunEval
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
347
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
348 % this is now specific to axial shadings. Compute the maximum bounds to fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
349 clippath {pathbbox}stopped {0 0 0 0}if newpath % x0 y0 x1 y1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
350 /ymax xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
351 /xmax xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
352 /ymin xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
353 /xmin xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
354 currentdict/Extend known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
355 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
356 /Extend load 0 get
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
357 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
358 0/Function load FunEval sc % evaluate the function to get a color and set it
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
359 xmin ymin xmin abs ymax ymin sub rectfill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
360 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
361 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
362 % paint the rects. The sampling frequency is that of our table
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
363 /Nsteps/Function load/Size get 0 get 1 sub store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
364 /dx 1 Nsteps div store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
365 gsave
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
366 /di ymax ymin sub store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
367 /Function load
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
368 % loop Nsteps + 1 times, incrementing the index by 1 each time
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
369 0 1 Nsteps
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
370 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
371 1 index FunEval sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
372 0 ymin dx di rectfill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
373 dx 0 translate
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
374 }for
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
375 pop % pop our function
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
376 grestore % origin is back to start point
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
377 currentdict/Extend known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
378 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
379 /Extend load 1 get
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
380 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
381 Nsteps/Function load FunEval sc % last element
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
382 1 ymin xmax 1 sub abs ymax ymin sub rectfill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
383 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
384 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
385 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
386
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
387 /shp % this paints our shape for shading type 3
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
388 { % x1 r1 x0 r0 -
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
389 4 copy
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
390
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
391 % fill interior arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
392 dup 0 gt{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
393 0 exch a1 a0 arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
394 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
395 pop 0 moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
396 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
397
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
398 dup 0 gt{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
399 0 exch a0 a1 arcn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
400 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
401 pop 0 lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
402 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
403
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
404 fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
405
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
406 % fill exterior arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
407 dup 0 gt{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
408 0 exch a0 a1 arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
409 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
410 pop 0 moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
411 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
412
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
413 dup 0 gt{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
414 0 exch a1 a0 arcn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
415 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
416 pop 0 lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
417 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
418
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
419 fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
420 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
421
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
422 /calcmaxs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
423 { % calculate maximum distance vector from origin to corner points
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
424 % of bbox
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
425 xmin dup mul ymin dup mul add sqrt % (xmin2 + ymin2)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
426 xmax dup mul ymin dup mul add sqrt % (xmax2 + ymin2)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
427 xmin dup mul ymax dup mul add sqrt % (xmin2 + ymax2)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
428 xmax dup mul ymax dup mul add sqrt % (xmax2 + ymax2)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
429 max max max % maximum value
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
430 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
431
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
432 /sh3
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
433 { % emulation of shading type 3. Assumes shading dictionary is top dictionary on the dict stack
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
434 /Coords load aload pop % x0 y0 r1 x1 y1 r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
435 5 index 5 index translate % origin is now at first circle origin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
436 3 -1 roll 6 -1 roll sub % y0 r1 y1 r2 dx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
437 3 -1 roll 5 -1 roll sub % r1 r2 dx dy
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
438 2 copy dup mul exch dup mul add sqrt
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
439 /dx xs % r1 r2 dx dy
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
440 2 copy 0 ne exch 0 ne or
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
441 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
442 % r1 r2 dx dy
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
443 exch atan rotate % we are now rotated so dy is zero and positive values of dx move us as expected
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
444 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
445 pop pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
446 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
447 % r1 r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
448 /r2 xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
449 /r1 xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
450 /Function load
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
451 dup/Size get 0 get 1 sub % this is the size of our table minus 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
452 /Nsteps xs % at some point we should optimize this better so NSteps is based on needed steps for the device
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
453 setupFunEval % may need to setup function dictionary by calling setupFunEval
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
454 % determine the case:
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
455 % case 0: circle1 inside circle2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
456 % case 1: circle 2 inside circle 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
457 % case 2: r1 = r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
458 % case 3: r1 != r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
459 dx r2 add r1 lt{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
460 % circle 2 inside of circle 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
461 0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
462 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
463 dx r1 add r2 le
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
464 { % circle 1 inside of circle 2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
465 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
466 }{ % circles don't contain each other
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
467 r1 r2 eq
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
468 { % equal
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
469 2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
470 }{ % r1 != r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
471 3
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
472 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
473 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
474 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
475 /sh3tp xs % sh3tp has the number of our different cases
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
476 clippath {pathbbox}stopped {0 0 0 0}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
477 newpath % x0 y0 x1 y1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
478 /ymax xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
479 /xmax xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
480 /ymin xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
481 /xmin xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
482
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
483 % Arc angle atan( sqrt((dx*dx + dy*dy) - dr*dr), dr)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
484 dx dup mul r2 r1 sub dup mul sub dup 0 gt
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
485 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
486 sqrt r2 r1 sub atan
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
487 /a0 exch 180 exch sub store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
488 /a1 a0 neg store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
489 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
490 pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
491 /a0 0 store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
492 /a1 360 store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
493 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
494
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
495 currentdict/Extend known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
496 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
497 /Extend load 0 get r1 0 gt and % no need to extend if the radius of the first end is 0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
498 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
499 0/Function load FunEval sc % evaluate the function to get a color and set it
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
500 % case 0: circle1 inside circle2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
501 % case 1: circle 2 inside circle 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
502 % case 2: circles don't contain each other and r1 == r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
503 % case 3: circles don't contain each other and r1 != r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
504 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
505 { % case 0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
506 dx 0 r1 360 0 arcn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
507 xmin ymin moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
508 xmax ymin lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
509 xmax ymax lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
510 xmin ymax lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
511 xmin ymin lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
512 eofill % for the bigger radius we fill everything except our circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
513 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
514 { % case 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
515 r1 0 gt{0 0 r1 0 360 arc fill}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
516 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
517 { % case 2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
518 % r1 == r2, extend 0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
519 % r3 = r, x3 = -(abs(minx) + r), x1 = 0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
520
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
521 % x(i+1) r(i+1) x(i) r(i) shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
522 0 r1 xmin abs r1 add neg r1 shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
523 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
524 { % case 3
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
525 % no containment, r1 != r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
526
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
527 r2 r1 gt{ % the endpoint we are drawing is that with a circle of zero radius
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
528 % x(i+1) r(i+1) x(i) r(i) shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
529 0 r1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
530 r1 neg r2 r1 sub div dx mul % this is point of beginning circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
531 0 % point of ending circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
532 shp % takes x(i+1) r(i+1) x(i) r(i)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
533 }{ % the first circle is the bigger of the two
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
534 % we find a circle on our line which is outside the bbox in the
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
535 % negative direction
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
536 % x(i+1) r(i+1) x(i) r(i) shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
537 0 r1 calcmaxs % 0 r1 maxs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
538 dup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
539 % calculating xs: (-(maxs+r2)*x2)/(x2-(r1-r2))
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
540 r2 add dx mul dx r1 r2 sub sub div
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
541 neg % maxs xs'
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
542 exch 1 index % xs' maxs xs'
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
543 abs exch sub
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
544 shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
545 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
546 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
547 }sh3tp get exec % execute the extend at beginning proc for our shading type
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
548 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
549 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
550
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
551 % now do the shading
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
552 /d0 0 store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
553 /r0 r1 store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
554 /di dx Nsteps div store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
555 /ri r2 r1 sub Nsteps div store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
556 /Function load
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
557 0 1 Nsteps
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
558 { % function t(i)
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
559 1 index FunEval sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
560 d0 di add r0 ri add d0 r0 shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
561 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
562 % fill interior arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
563 d0 0 r0 a1 a0 arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
564 d0 di add 0 r0 ri add a0 a1 arcn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
565 fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
566
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
567 % fill exterior arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
568 d0 0 r0 a0 a1 arc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
569 d0 di add 0 r0 ri add a1 a0 arcn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
570 fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
571 }pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
572
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
573 % advance to next
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
574 /d0 d0 di add store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
575 /r0 r0 ri add store
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
576 }for
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
577 pop % pop our function dict
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
578
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
579 % handle Extend
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
580 currentdict/Extend known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
581 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
582 /Extend load 1 get r2 0 gt and % no need to extend if the radius of the last end is 0
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
583 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
584 Nsteps/Function load FunEval sc % last element
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
585 % case 0: circle1 inside circle2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
586 % case 1: circle 2 inside circle 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
587 % case 2: circles don't contain each other and r1 == r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
588 % case 3: circles don't contain each other and r1 != r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
589 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
590 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
591 dx 0 r2 0 360 arc fill
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
592 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
593 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
594 dx 0 r2 360 0 arcn
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
595 xmin ymin moveto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
596 xmax ymin lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
597 xmax ymax lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
598 xmin ymax lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
599 xmin ymin lineto
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
600 eofill % for the bigger radius we fill everything except our circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
601 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
602 { % r1 == r2, extend 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
603 % r3 = r, x3 = (abs(xmax) + r), x1 = dx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
604 % x(i+1) r(i+1) x(i) r(i) shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
605 xmax abs r1 add r1 dx r1 shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
606 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
607 { % no containment, r1 != r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
608
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
609 r2 r1 gt{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
610 % we find a circle on our line which is outside the bbox in the
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
611 % positive direction
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
612 % x(i+1) r(i+1) x(i) r(i) shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
613 calcmaxs dup % maxs maxs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
614 % calculating xs: ((maxs+r1)*x2)/(x2-(r2-r1))
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
615 r1 add dx mul dx r2 r1 sub sub div % maxs xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
616 exch 1 index % xs maxs xs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
617 exch sub
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
618 dx r2
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
619 shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
620 }{ % the endpoint we are drawing is that with a circle of zero radius
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
621 % x(i+1) r(i+1) x(i) r(i) shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
622 r1 neg r2 r1 sub div dx mul % this is point of ending circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
623 0 % radius of ending circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
624 dx % point of starting circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
625 r2 % radius of starting circle
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
626 shp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
627 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
628 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
629 }
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
630 sh3tp get exec % execute the extend at end proc for our shading type
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
631 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
632 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
633 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
634 /sh % emulation of shfill operator for type 2 and type 3 shadings based on type 0 functions
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
635 { % shadingDict --
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
636 begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
637 /ShadingType load dup dup 2 eq exch 3 eq or
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
638 { % shadingtype
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
639 gsave
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
640 newpath
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
641 /ColorSpace load scs
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
642 currentdict/BBox known
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
643 {
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
644 /BBox load aload pop % llx lly urx ury
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
645 2 index sub % llx lly urx ury-lly
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
646 3 index % llx lly urx ury-lly llx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
647 3 -1 roll exch sub
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
648 exch rectclip
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
649 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
650 2 eq
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
651 {sh2}{sh3}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
652 grestore
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
653 }{
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
654 % shadingtype
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
655 pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
656 (DEBUG: shading type unimplemented\n)print flush
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
657 }ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
658 end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
659 }bd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
660
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
661 % end of language level 2 ONLY code
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
662
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
663 {restore}if not dup{save exch}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
664 % languagelevel3 ONLY code goes here
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
665 L3?{ % we do these loads conditionally or else they will fail on a level 2 printer
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
666 /sh/shfill ld
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
667 /csq/clipsave ld
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
668 /csQ/cliprestore ld
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
669 }if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
670 {restore}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
671
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
672 %currentdict dup maxlength exch length sub (number of extra slots in md = )print == flush % *** how many entries are free
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
673 end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
674 setpacking
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
675 % count 0 ne { pstack(***extras on stack during prolog execution***\n)print flush}if % *** BARK if anything is left on stack
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
676 %%EndFile
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
677 %%EndProlog
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
678 %%BeginSetup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
679 %%EndSetup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
680 %%Page: 1 1
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
681 %%PageBoundingBox: 0 0 460 307
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
682 %%BeginPageSetup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
683 cg_md begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
684 bp
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
685 sdmtx
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
686 %RBIBeginFontSubset: HelveticaNeue
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
687 %!FontType1-1.0: HelveticaNeue 1.0000.1.0000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
688 14 dict begin/FontName /HelveticaNeue def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
689 /PaintType 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
690 /Encoding 256 array 0 1 255{1 index exch/.notdef put}for
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
691 dup 33 /space put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
692 dup 34 /M put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
693 dup 35 /o put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
694 dup 36 /a put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
695 dup 37 /r put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
696 dup 38 /V put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
697 dup 39 /P put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
698 dup 40 /e put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
699 dup 41 /l put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
700 dup 42 /six put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
701 dup 43 /N put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
702 dup 44 /Q put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
703 dup 45 /J put
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
704 readonly def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
705 42/FontType resourcestatus{pop pop false}{true}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
706 %APLsfntBegin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
707 {currentfile 0(%APLsfntEnd\n)/SubFileDecode filter flushfile}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
708 /FontType 42 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
709 /FontMatrix matrix def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
710 /FontBBox[1000 -951 1 index div -481 2 index div 1987 3 index div 1077 5 -1 roll div]cvx def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
711 /sfnts [<
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
712 74727565000900000000000063767420000000000000009C000000186670676D00000000000000B400000428676C796600000000000004DC00000B2C6865616400000000000010080000003668686561000000000000104000000024686D747800000000000010640000003C6C6F636100000000000010A0000000206D61787000000000000010C0000000207072657000000000000010E00000004D14000014004B005A00000011FF3A000B0205000C02CA0011B800002C4BB800095058B101018E59B801FF85B844001DB9000900035F5E2DB800012C2020456944B001602DB800022CB800012A212DB800032C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800042C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB800052C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800062C2020456944B001602020457D691844B001602DB800072CB800062A2DB800082C4B20B003265358B0801BB040598A8A20B003265358B0022621B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B80003265358B0032545B8014050582321B8014023211BB003254523212321591B2159442DB800092C4B535845441B2121592DB8000A2C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB8000B2C2020456944B001602DB8000C2CB8000B2A212DB8000D2C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB8000E2C2046B00425465258238A592046206A6164B0042546206A61645258238A592FFD2DB8000F2C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB800102C2020456944B001602020457D691844B001602DB800112CB800102A2DB800122C4B20B003265358B0801BB040598A8A20B0032653582321B0C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB800132C4B535845441B2121592DB800142C4BB800095058B101018E59B801FF85B800441DB9000900035F5E2DB800152C2020456944B001602DB800162CB800152A212DB800172C2046B003254652582359208A208A49648A204620686164B004254620686164525823658A592F20B00053586920B000545821B040591B6920B000545821B0406559593A2DB800182C2046B00425465258238A592046206A6164B0042546
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
713 206A61645258238A592FFD2DB800192C4B20B0032650585158B080441BB04044591B21212045B0C05058B0C0441B2159592DB8001A2C2020456944B001602020457D691844B001602DB8001B2CB8001A2A2DB8001C2C4B20B003265358B0401BB000598A8A20B0032653582321B0808A8A1B8A235920B0032653582321B800C08A8A1B8A235920B0032653582321B801008A8A1B8A235920B0032653582321B801408A8A1B8A235920B80003265358B0032545B8018050582321B8018023211BB003254523212321591B2159442DB8001D2C4B535845441B2121592D00020033000101CC02C8000300070065B800142BB800082FB800002FB8000810B80006D0B800062FB900020003F4B8000010B900040003F4B80009DC00B800014558B800042F1BB90004000A3E59B800014558B800052F1BB9000500043E59B8000410B900000002F4B8000510B900020002F4303101211121131121110199FECD013333FE67029AFD950299FD3902C700020026FFF5020702C50023003700E3BA001C000900032BB8001C10BA0013002900032BB8001310411B0006001C0016001C0026001C0036001C0046001C0056001C0066001C0076001C0086001C0096001C00A6001C00B6001C00C6001C000D5D410500D5001C00E5001C00025D410500DA002900EA002900025D411B0009002900190029002900290039002900490029005900290069002900790029008900290099002900A9002900B9002900C90029000D5DB8000910B80033DCB8001310B80039DC00BA002E000E00032BB8002E10BA0004002100032BB8000410BA0018002400032BB8001810B8000410B80000DC303101332E0123220E0215141E0233323E0235342E0223220607273E0333321607321E0215140E0223222E0235343E02019E550868584C643C191134604F435B37181E3751333A591E02010E254236333E7A2436241113243523233725141326360210585D406A8949387864402D45542731543E232C3102295E51353AC31A2B3B211F392C19192A3A21213B2B190000010016FFF001B902CA0015002BBA000C000D00032BB8000C10BA0001000200032BB800011000B800012FBA0006001100032BB8000610303125112311140623222E023D012315141633323E0201B95F3141232D190A5F6C643C513115B20218FDF63B461526341F1E2C666921374600000100500000031702CA000E0057BA0003000000032BB8000310BA000B000800032BB8000B10BA000D0000000B11123900B800012FB800052FB800092FB800002FB8000B2FBA000400010000111239BA000800010000111239BA000D000100001112393031131133113313331333113311230B01505A02DF51DF025A82E2E102CAFD360252FDAE0252FDAE02CAFDA802580000000001004D0000028602CA000B004BBA00
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
714 03000000032BB8000310BA0007000800032BB8000710B8000810B8000AD0B8000A2F00B800012FB800052FB800002FB800072FBA000400010000111239BA000A0001000011123930311311331133013311231123014D5A020175685A02FE8802CAFD36023DFDC302CAFDBD02430000000002004E0000026202CA000800130089B800152FBA0001000900032BB8000110B8001510B80010DCB80005DC410500DA000500EA000500025D411B0009000500190005002900050039000500490005005900050069000500790005008900050099000500A9000500B9000500C90005000D5DB8000110B8000BD000B8000A2FBA0009000100032BB8000910BA0000000C00032BB800001030311311333216151406270111331133163635342623ADBA514B4B51FEE75FDA6C6F6F6C0174010643404044010156FD360124017064646F0000020026FFC302D202DB0016002D00E1B8002E2FB8002F2FB8002E10B80026D0B800262FB8002F10B8001CDCBA00020026001C111239B8002610B80009DC411B0006000900160009002600090036000900460009005600090066000900760009008600090096000900A6000900B6000900C60009000D5D410500D5000900E5000900025DB8001C10B80013DC410500DA001300EA001300025D411B0009001300190013002900130039001300490013005900130069001300790013008900130099001300A9001300B9001300C90013000D5D00B800172FBA0004002B00032BB8000410BA0021000E00032BB800211030312507170623222E0235343E0233321E02151406071737273E0135342E0223220E0215141E0233323701C2324F3033415E3C1C1C3C5E41415E3C1C282A73305E36362B5680555580562B2B5680556348CC3A3F1433546936366954333354693642792ABD3C4A3694524987683E3E6887494987683D2A0000000100000000026502CA0007001900B800012FB800052FB800002FBA000400000001111239303121132303230323130167FE63CE02CC66FB02CAFD95026BFD3600020024FFF5020A021100300042015CB800142BBB00380003000D00182BBB002A0003001700182BB8001710B80005D0B800052F4111000600380016003800260038003600380046003800560038006600380076003800085D4105008500380095003800025DB8003810B900200003F4B9001F0003F4B8001710B900300003F4B8001710B80031D0B800312FB8002A10B80044DC00B800014558B800252F1BB9002500083E59B800014558B800022F1BB9000200043E59B800014558B800082F1BB9000800043E59BA000500020025111239B8002510B9001C0002F441050089001C0099001C00025D41110008001C0018001C0028001C0038001C0048001C0058001C0068001C0078001C00085DB8002510B8001FDCB800
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
715 0210B9002E0002F441110007002E0017002E0027002E0037002E0047002E0057002E0067002E0077002E00085D41050086002E0096002E00025DBA003000020025111239BA003100020025111239B8003DD030312506232226350E0123222E0235343E02373E0335342E0223220607233E0333321E0215111416333237270E0515141E0233323E0235020A16272127235D36233F2E1B1E313F21233F301C152129143648035502243C4D2C2345382207140B0F8A1034393A2E1D111B24142A3C2612020D252A2A25102237272C3823120607070D19181C2212062939304229120A1F382DFEF61E1C05C70C0B0709142520151D12081723291200000000020024FFF502030211000A0026005BBA0014001F00032BB8001410BA0015000000032BB8001510B8001410B80001D0B8000010B8000CD0B8000C2F00BA000F002400032BB8000F10BA001A000600032BB8001A10BA0001001400032BB8000110B8002410B8000CDC303101213E0333321E0217230E0123222E023721362E0223220E02151E0333323601A7FED702162635212035271754540B45362A3E28120101830215375B4535594124021F3E5B3E587401341E352817172736AE33321C2F3D222F6858392848623B3B64482858000100450000009A02CA00030017BA0003000000032BB800031000B800012FB800002F303113113311455502CAFD3602CA00000000020024FFF5021A02110013002700CBB800282FB800292FB8002810B80014D0B800142FB80000DC411B0006000000160000002600000036000000460000005600000066000000760000008600000096000000A6000000B6000000C60000000D5D410500D5000000E5000000025DB8002910B8001EDCB8000ADC410500DA000A00EA000A00025D411B0009000A0019000A0029000A0039000A0049000A0059000A0069000A0079000A0089000A0099000A00A9000A00B9000A00C9000A000D5D00BA000F001900032BB8000F10BA0023000500032BB8002310303113343E0233321E0215140E0223222E0227141E0233323E0235342E0223220E027E192C3B21213B2C19192C3B21213B2C195A20405E3D3E5D402020405D3E3D5E402001022F49321A1A32492F2F49311A1A31492F39624929294962393963492A2A496300000001003D0000014D0213000E0027BA0003000100032BB8000310B8000DD0B8000D2F00B800012FBA0009000800032BB8000910303113113335343E02333526060723353D55142C4833455A1F020205FDFBE6324D361C5A023C3F6D0000020037FF5B04A802FA000B00110023B800142BBB00060003000300182B00B800042FB800112FBB00090002000000182B3031372226351133111416332115050901370901F75E62622E30034EFEA20136FECA42017FFE8276606101C3FE3D30345DD701
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
716 0401004BFEB5FEB80001000000010000062A4FC55F0F3CF5011103E800000000B643600000000000D7C23C38FC49FE1F07C304350000000900020000000000000001000003B8FF2B001C08B1FC49FE8007C300010000000000000000000000000000000F01F4003301160000022C0026020700160367005002D2004D0288004E02F8002602630000021900240219002400DE0045023E0024014D003D04BE003700000048004801080140018A01CA023202E6030604100478049205320560059600010000000F0096000900680004000200000000001E00000200042800030001B800142B01BA0002000200162B01BF0003003E0037002B001F00130000001C2B00BF0002004A0037002B001F00130000001C2B00BA00040004001B2BB8000120457D691844B8000A2BB800002B000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
717 00>] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
718 /CharStrings 15 dict dup begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
719 /.notdef 0 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
720 /space 1 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
721 /six 2 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
722 /J 3 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
723 /M 4 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
724 /N 5 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
725 /P 6 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
726 /Q 7 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
727 /V 8 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
728 /a 9 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
729 /e 10 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
730 /l 11 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
731 /o 12 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
732 /r 13 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
733 /uni2B91 14 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
734 end readonly def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
735 currentdict dup/FontName get exch definefont pop end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
736 %APLsfntEnd
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
737 42/FontType resourcestatus{pop pop true}{false}ifelse
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
738 {currentfile 0(%APLT1End\n)/SubFileDecode filter flushfile}if
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
739 /FontType 1 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
740 /FontMatrix [ 0.001 0 0 0.001 0 0 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
741 /FontBBox{-951 -481 1987 1077}def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
742 /UniqueID 4151493 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
743 currentdict currentfile eexec
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
744 54544758EC884CF30C3CD503CEDBFF3839C47C3C3333173232E3FDBFF439491DB843E1924E63AA7726BBB0485AB56D93D8C0906F647A47162891E73FFC2A9873C4B1EAC5EEBDFFC4D06084FBD84139DF4583C6E259D10699944D1068C9C45667DCCCFB9B7EA01B606435EDCBD273ABAC093D14085CCBAC149BD7382E842CFE0D7FE4FD2EF589A2471F6074A80A8B675C2F7A50D63AC1EF90D787BADD11633CB01CF6EE3B37AAF9078A69AC4740E9B6525D78BBD839551A1CB80DB8682FA5E87591BBD6EE8B946063A2A58D9CA3685AB305495DC5FB5747EB8A9A059C4976C0FE4EEAB1D56FF47F1E9664ED9F4A7DAB763AF92B2F6CF2FA7DEC24710E0B9096E30F772BA7FEA9BDBE496C42ED2CEB58F54E80BDF57CE7B4DB6CCFE7182F43BF93CCA0767AF95D62C5D2C3DC6AE1E6D139F51A2C63432117F1714C5566572EE9967A715420ABDCD1D7BD74F8450B89965FCC81C6ACA565C5F3CCF91D430D1F953E4F1A645300A98DD8C47CD64555F08F422340A85404EAE0D3229C4F9336B9470CACBD6BBF3395104750A915CC6EAAC197668267B8C62D2764C8CD69FD937CA3C924D997A0EDE7964BEB9EA2F92EF70C5E5DA0AA5567765E71F2B911B3C5586B741EEB93F3C73016EC16BFF283758900903D203992EFC8BAFAF13579C602F38C91B1454491BCF48412CA40CE1C5F7851A403FDB5F7EBECD00BD59442330258C8F54F9A2B51CA5B18D1E30D1E4A019367173FB88C9EAC98BBAE7C8DBD85C921487E373D87D743B1E079DE09460CC2A636025DC35BEC305286A6417863D21598DD21D73FBBE42615DDD41C15AD35281AAFDD0AEC69551C6A28E3B80A48799AC3B40AE9CF973E85FC1F0F823599BA829D3CF0DEC0232021563D3AA221D2EF22204AF7B557A804DD4A7B1017F879E2F2118396C1180DCDD08F38BFCE37C662B3F2E366144A4D963025E1A5319637505A2EDFEB528CA9970FF8ED7F9535484185C3C7AD75DFA7DFBB353EB08281333FAAF0B6F0F2B5754F60968B327F893CFC575AF6295EA580E6246E9B6229C6DA6F95A3FCB7058D9E02B63EDD142AF8F2830ACA9D442282B0BA121ED067EE237AC776AE71FAC3BA7EF4719A64FE81A11E38A897407E9951375983367BE16AE2A6F820562728002ECB442A2F1165855819E99A7CCFC0BB3F2DE88A4FD68534CD4D00C0313B5FFDD49D70BBD5046CBD6F47F429844B57132EB7CBBA4F85BD8874586A1824A3245EEFA7AB1B73E63D9FF68E97E489DF0CC28FEC218D3EC8161F48E38C8FCEF2D84C32F49918488A70DCE7101187BB91A3B57162D9FA495C5875C6568760C39FA51C1400B6926C3C77A6CDC92EBE5FF979B01D08729C9A9D8259689CA4D8B404331BEAED1B9E84297C42B695C7984BABA8D1C48EB126878F6234BAC70464CA8714C990A8CA9AF4BB338DE1C3B1E532A7EE
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
745 B5DF2E0B09D799F0FE0F4CEA78ECDD1C088DC37CEE6110431390711E66F98707098B7B74A73B56A34171A20E859377DF19D8500556F2A3C1CC2B7A95070365B04BEAA4C6E44686F8DE05E946CE1DD8C8474BF1877EEC83ADD29E77DC0A78B9B2232894A43FCB3CBCD95D705483CC0F374A5EAFE14699A4A8D9E6E174FDE9E93B7A3C00B9574052C03638D585BBA34D5C146C19277A5BDBF51FBA97EAC43DE47AEF928D4A6A6669BC75BE267750B0E9D51E0A2278EB48974C8610EC7E63A39601D35508377826D4AEC61EEDF4707E69F95906FCF08531DA749DF4846F846C5B6E93EA1FBF83165D4D13CB08078E860BDD264993367505BED3D19921D4834EB01370C53163264BB9A2FEA871D9BD123448C8C291BF287FF0C048C2BA7F7D6355C84409D4C8CC5510AFCD0994DC89A85B3771E41F05094DC08F113D22BF7B4B09BA1C0D66DB36886294CD658C8F5F3155ED5EAF803D7AF9BCD2FA836BB1607C70E3B71414B4C2F09EEDF004BD40436C69FC37FC3350BAA177FD1FF616C8493948FF25632812D37C56E086C4A0A2810AA8181391E1E2378009DEBB0C0550F2C8299EC3B727C78E840E7313ACFB2FF34A3013AB731DF38B5C01B79492BBEFFD338ACE3B59CD0E533CF22A49BFC433853BBCE878A78750DEFFF0FDF0F46BAABAC5F312A03010F8F1CB430888C1BEF641515C5291A0437A6FDD2D0BDB3334500383084147352B19E1F194A178DAF9FF9AD868FE0093C346BAB3604210B11B075490DAA499AEC959C52B4D28048887C39E67ECF36CD6AFA4C02450624A2B5765F91AB04E63970A39F13832D928A84085AE3B12B45A23659206390F78DF8166CE5DC4F908DFB6FB2C2DDA6D0DBB31E13687E3D410EEA087651C574005B6C64A4F4807C1662E7177B85C9E9F682DB371AAC607A952F8C95C3C8C8FF0B254537F4E445EE7E782B5DC26FA55A025724D21E427BA05D03F80045837EA44A911669897C0E16C83346C225683661087E46E2EFABB768053B93E8DDDDFAF6D7FE5F1E7AB4E8AAB5A9A2B77784176BE3B87C1292048C3DDA80356842E0452F65B65DE41C898A3D508FCAC9D26760348FAC55C191A8F4E5F2C4445D89C2C1B831CE296B2E4D2F2F43A5B156087BC75309493FEC5CCC9A52360C8FB0188283D98B0211071CC9B06725FB16DCEAA5E023373E6FE037F4F4396B6EB65F6DF5E9BB8BE00F8B771B9E019DD8508185A1C6C3044D8DA89CE6A4BB310A7CA62989DBDD61732FF895676B65F55C0723E65BCF70586F8FFFC49D788CF87B7116EFC2120E1657980F3488FF6AEA79C912E50242C4035C957CF40E1915AAAB684C3616B52C7C9EB68A78F6979D7D8CBBDE454F39EF3D470883EA044B7DDC3DBBAB98A0ADF4921A2A14374A850E86063FC8BA4BB1BCE55A19EEA3AE24756ABA535FB872AEECC494530DC912AC1E23B
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
746 6FC6A27A318C0D19D66F0706D5EC0BA6E74ABCA979F19D9445629C88EBE06EAE999CE2430D686C5F4857D420379C6C1B674676373C5C93CC829072E560ABB0500589AC7FD211FEA540B193D702A0D86F3DC8EE498FAA4FABC52A87EB199D740EBC673300344A78A739B92B313A299558A9E79BA5C0075C9A4B56C84B9B20B4D56822E079DB29346054F0B40E777756B5BB60B43C197D132FC67A6FBC9B97B44715DFFCF95F16E18C1E2974271C531D56CA9D60A7FAC96DCA144E8A7F670605C273D16D5B446148CB389F7B2703443155F7FC76A686781E0BDCB7BEA353BF7E20A8B5C39FEDFEBB79471C83AF730AE4DD51A8515B04643A4C6A04BD546330566BDAC1FDE0F63E0AABF3CD14AFFEC15A173D1DFDDE35D7941BDC26CB74F7244813F74998C6F2E9A7F19D44746F001812016BB8678C18530CB19875AD3F30B6C7BAB82A4FA79536C72B408647771AFD2F378A2E101F91DE769F1DFC0AC8DFC8E977A6434BA5BED71699422161F6A4F803A448DC4767C8C92520D10CE52EC70CDA6ACF1EC6185DB2F44CA5DB970F72CA2892E920A73597627D8689F6A0F2F06EBBEB6C03AB0DD8BE3E98BB056CC018F1B2A4BF61515409BB274FD330E0014A41AB41790553C144FE817D0B6044ED8E896C2233836B5C66AF22A71635A0E98F74B2971E5C1960C3B14AFD3635EF2606461604CDF5DC2A3188D9018BC64950DCC82BF8FD778EBC33A6A61D78846BDE3122A9165EB636BC86B23B7B35279E437AD75CA026DF505E80A4E51AF62278645F44002295E019DD9601F5D7265416B9CBD7375C2B7D5FB8F0861703ECCD63CE4FAA2FC654B1FB420BB0DD91397497A8E8488D7706F767BEE3AD5BDA994F680D43500C228F0128DD2BF6FF43ECA31C66CC8C76BC6B56CD856C5E55CCC6F71FD99BF19C5468C5FCF9685F329D03C17A02D017ED46A050C3237917B571BA91760432314672233A0C6C54A2FCE6E2FAC31A20E88315C7D0120799B91467DF6B86189C792200FC2AFC8575D5E6ED008DFEBD6EEDD982665976DF89E14179
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
747 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
748 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
749 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
750 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
751 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
752 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
753 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
754 0000000000000000000000000000000000000000000000000000000000000000
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
755 cleartomark end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
756 %APLT1End
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
757 %RBIEndFontSubset
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
758 /HelveticaNeue cguidfix
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
759 /F1.1/HelveticaNeue renmfont
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
760 [ /CIEBasedABC 4 dict dup begin
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
761 /WhitePoint [ 0.9505 1.0000 1.0891 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
762 /DecodeABC [ { 1.8008 exp } bind { 1.8008 exp } bind { 1.8008 exp } bind ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
763 /MatrixABC [ 0.4295 0.2318 0.0204 0.3278 0.6722 0.1111 0.1933 0.0960 0.9578 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
764 /RangeLMN [ 0.0 0.9505 0.0 1.0000 0.0 1.0891 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
765 end ] /Cs1 exch/ColorSpace dr pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
766 [ /CIEBasedA 5 dict dup begin /WhitePoint [ 0.9505 1.0000 1.0891 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
767 /DecodeA { { 1.8008 exp } bind exec} bind
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
768 def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
769 /MatrixA [ 0.9642 1.0000 0.8249 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
770 /RangeLMN [ 0.0 2.0000 0.0 2.0000 0.0 2.0000 ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
771 /DecodeLMN [ { 0.9857 mul} bind { 1.0000 mul} bind { 1.3202 mul} bind ] def
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
772 end ] /Cs2 exch/ColorSpace dr pop
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
773 %%EndPageSetup
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
774 /Cs1 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
775 1 1 1 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
776 q
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
777 0 0 460 307 rc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
778 -58 365 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
779 518 365 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
780 518 -584 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
781 -58 -584 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
782 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
783 -58 365 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
784 f
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
785 14 131 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
786 302 131 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
787 302 14 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
788 14 14 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
789 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
790 14 131 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
791 f
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
792 7 w
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
793 1 J
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
794 1 j
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
795 0.60000002 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
796 0 0 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
797 1 0 0 -1 -58 365 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
798 72 234 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
799 360 234 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
800 360 351 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
801 72 351 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
802 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
803 72 234 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
804 S
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
805 /Cs2 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
806 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
807 0 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
808 1 0 0 -1 158 72.5 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
809 /F1.1[ 24 0 0 -24 0 0]sf
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
810 -139 8.6640015 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
811 (!!!!!!!!!"#$%&")[ 6.672000 6.672000 6.672000 6.672000 6.672000 6.672000 6.672000 6.672000 6.672000 20.904000 13.776000 12.888000 7.992000 14.664000 0.000000 ] xS
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
812 /Cs1 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
813 1 1 1 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
814 CM
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
815 14 293 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
816 446 293 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
817 446 212 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
818 14 212 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
819 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
820 14 293 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
821 f
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
822 0.60000002 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
823 0 0 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
824 1 0 0 -1 -58 365 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
825 72 72 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
826 504 72 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
827 504 153 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
828 72 153 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
829 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
830 72 72 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
831 S
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
832 /Cs2 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
833 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
834 0 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
835 1 0 0 -1 230 252.5 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
836 -27.552 8.6640015 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
837 ('\(%\)*)[ 15.552000 12.888000 7.992000 5.328000 0.000000 ] xS
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
838 /Cs1 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
839 1 1 1 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
840 CM
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
841 14 212 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
842 446 212 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
843 446 131 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
844 14 131 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
845 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
846 14 212 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
847 f
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
848 0.60000002 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
849 0 0 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
850 1 0 0 -1 -58 365 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
851 72 153 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
852 504 153 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
853 504 234 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
854 72 234 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
855 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
856 72 153 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
857 S
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
858 /Cs2 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
859 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
860 0 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
861 1 0 0 -1 230 171.5 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
862 -25.559999 8.6640015 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
863 (+,')[ 17.328000 18.240000 0.000000 ] xS
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
864 /Cs1 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
865 1 1 1 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
866 CM
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
867 239 131 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
868 446 131 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
869 446 14 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
870 239 14 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
871 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
872 239 131 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
873 f
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
874 0.60000002 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
875 0 0 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
876 1 0 0 -1 -58 365 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
877 297 234 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
878 504 234 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
879 504 351 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
880 297 351 l
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
881 h
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
882 297 234 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
883 S
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
884 /Cs2 SC
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
885 0 sc
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
886 0 i
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
887 1 0 0 -1 342.5 72.5 cm
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
888 -24.011999 8.6640015 m
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
889 (-&")[ 12.456000 14.664000 0.000000 ] xS
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
890 ep
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
891 end
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
892 %%Trailer
anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
893 %%EOF