fixed image path
[lectures/latex.git] / computational_physics / red-bullet-on-white.ps
1 %!PS-Adobe-2.0 EPSF-2.0
2 %%Title: /home/fred/TeX/STYLES/Prosper/img/red-bullet-on-white.ps
3 %%Creator: XV Version 3.10a+FLmask  Rev: 12/29/94  -  by John Bradley
4 %%BoundingBox: 276 376 336 416
5 %%Pages: 1
6 %%DocumentFonts:
7 %%EndComments
8 %%EndProlog
9
10 %%Page: 1 1
11
12 % remember original state
13 /origstate save def
14
15 % build a temporary dictionary
16 20 dict begin
17
18 % define space for color conversions
19 /grays 60 string def  % space for gray scale line
20 /npixls 0 def
21 /rgbindx 0 def
22
23 % lower left corner
24 276 376 translate
25
26 % size of image (on paper, in 1/72inch coords)
27 59.97600 40.03200 scale
28
29 % define 'colorimage' if it isn't defined
30 %   ('colortogray' and 'mergeprocs' come from xwd2ps
31 %     via xgrab)
32 /colorimage where   % do we know about 'colorimage'?
33   { pop }           % yes: pop off the 'dict' returned
34   {                 % no:  define one
35     /colortogray {  % define an RGB->I function
36       /rgbdata exch store    % call input 'rgbdata'
37       rgbdata length 3 idiv
38       /npixls exch store
39       /rgbindx 0 store
40       0 1 npixls 1 sub {
41         grays exch
42         rgbdata rgbindx       get 20 mul    % Red
43         rgbdata rgbindx 1 add get 32 mul    % Green
44         rgbdata rgbindx 2 add get 12 mul    % Blue
45         add add 64 idiv      % I = .5G + .31R + .18B
46         put
47         /rgbindx rgbindx 3 add store
48       } for
49       grays 0 npixls getinterval
50     } bind def
51
52     % Utility procedure for colorimage operator.
53     % This procedure takes two procedures off the
54     % stack and merges them into a single procedure.
55
56     /mergeprocs { % def
57       dup length
58       3 -1 roll
59       dup
60       length
61       dup
62       5 1 roll
63       3 -1 roll
64       add
65       array cvx
66       dup
67       3 -1 roll
68       0 exch
69       putinterval
70       dup
71       4 2 roll
72       putinterval
73     } bind def
74
75     /colorimage { % def
76       pop pop     % remove 'false 3' operands
77       {colortogray} mergeprocs
78       image
79     } bind def
80   } ifelse          % end of 'false' case
81
82
83
84 % define the colormap
85 /cmap 735 string def
86
87
88 % load up the colormap
89 currentfile cmap readhexstring
90 140a09 748284 8c050b 3c4244 540408 bcc4c4 8c4a44 c40507 542220 242422 
91 740404 dce2e4 9c2a24 ac0506 340204 bc8e8c ecf3f0 541517 5c6264 9ca3a1 
92 e40306 741311 341312 9c0508 f4c2c4 640304 f4f4ec ac1314 6c4244 343533 
93 d40307 4c534f ac0a04 f4fdfb 740b0b fce4e2 ccd2cc 240a0c 949393 641412 
94 6c7370 9c0b08 d44a54 44020c acb4b4 441211 840b0b 540c0a 4c261c bc0506 
95 c4aaa4 741c24 640d0b dcc2c4 9c6264 242a24 d40a04 f4eae4 c40e04 f4f5f4 
96 4c5a54 241011 8c0a0a 544d4c bccacc a4aba8 443e3c 7c0b0b 5c0d0b 6c0c0b 
97 8c8e84 b40606 746a6c f40204 341a16 a40508 e4d6d4 fcfcf3 641c1c cc0406 
98 340b0b 541a1c e40a04 343a3c dc0208 949c98 747e7c 444a4c 342321 e4eae7 
99 ec0404 841516 bc0b05 6c1311 a40a06 440e0f c46664 f4eef4 2c1111 3c0c0b 
100 140e0c 848584 842e34 e4fef4 3c1313 2c1e1e d4dedc 441a14 fcf6f7 940a09 
101 f4d6d4 5c1416 aca6ac 9c1418 5c5254 740d14 b4bebc 841b1e 5c5d5b cccdcb 
102 5c0c14 ecbab4 6c0d14 fcfefc a49e9c cc6a6c b44644 dca2a4 fc7e84 947674 
103 dcbabc 64363c ac3634 b47878 bcbdbc a47e7c 7c4a4c fcaaac cc5a64 ac1a1c 
104 6c6c6c dc7674 843e3c 84625c fcdedf fcb6b4 8c1e1c dccecc 9c4a54 ccc2bc 
105 840509 342c2c bc1e24 442e2c 9c1a24 a43e44 ac6264 fccac4 848a8c 644a44 
106 8c9690 94060c 7c141c b40c05 d4d4d4 dc0a0c fcece0 7c6868 9c9c9e 4c0d0b 
107 843634 fcbeb4 1c0808 7c8381 444443 5c0207 2c2624 7c060c e4e4e3 a4a4a4 
108 fcc6cc fcf5ec 2c1717 3c3534 545453 2c0907 747574 b4b4b2 4c1212 7c1a1f 
109 2c2b2c 5c4a54 c4cbce acabac 3c3b3b 7c7d7b 4c4c4a ececec 1c110e ecfef9 
110 4c1e1c fcd5cf a41214 bc424c c4bec4 c4c5c4 54262c ac0214 646464 34161c 
111 9c0614 6c0204 b41614 fce5ec ccd6dc 64161c 840a14 540e14 640c14 d40c14 
112 c40a14 7c0b14 ecaeac b40414 a40614 cc0614 340e14 5c1c1c 34222c ec0614 
113 6c121c 3c0e14 dcdddc 940e14 fcecec 7c6a74 4c0e14 4c0204 545a57 3c1a1c 
114 fceef5 ac7e84 ac0a14 4c3e3c 8c8a8c 
115 pop pop   % lose return values from readhexstring
116
117
118 % rlecmapimage expects to have 'w h bits matrix' on stack
119 /rlecmapimage {
120   /buffer 1 string def
121   /rgbval 3 string def
122   /block  384 string def
123
124   % proc to read a block from file, and return RGB data
125   { currentfile buffer readhexstring pop
126     /bcount exch 0 get store
127     bcount 128 ge
128     {  % it's a non-run block
129       0 1 bcount 128 sub
130       { currentfile buffer readhexstring pop pop
131
132         % look up value in color map
133         /rgbval cmap buffer 0 get 3 mul 3 getinterval store
134
135         % and put it in position i*3 in block
136         block exch 3 mul rgbval putinterval
137       } for
138       block  0  bcount 127 sub 3 mul  getinterval
139     }
140
141     { % else it's a run block
142       currentfile buffer readhexstring pop pop
143
144       % look up value in colormap
145       /rgbval cmap buffer 0 get 3 mul 3 getinterval store
146
147       0 1 bcount { block exch 3 mul rgbval putinterval } for
148
149       block 0 bcount 1 add 3 mul getinterval
150     } ifelse
151   } % end of proc
152   false 3 colorimage
153 } bind def
154
155
156 60 40 8                 % dimensions of data
157 [60 0 0 -40 0 40]               % mapping matrix
158 rlecmapimage
159
160 0f7b824d7b6c816c4d824d6c7b817b218421c721c721822167c782c7214d844d6c4d6c7b
161 117b
162 107b816c4d864df06c4d6c3b2181217b017b814d218821c7217b4d6cf06c4d814d7b027b
163 814d7b0b7b
164 0f7b814d7b897bd5f06c4d6c7b4d6c4d814d6c016c85ea4d6c4d6c7b817b4d024d037b81
165 4d7b0a7b
166 0f7b81217b017b834d6cd56c016c82f06cf081f0ea01ea84a6d5b54d7b027b014d107b
167 0f7b8221c77b827bf06c906cd590de858e33e6a2759b7d8990ea6cb581b57b127b
168 0f7b01218b7bb54d6c18f14e6f34a25be982e971e987e92e92609da6b54d844d217b214d
169 814d7b0b7b
170 107b8d216c4d6cf1112f3445435b6d294b834bca291b861b17718d23b54d814d2182214d
171 6c816c7b0a7b
172 0f7b9d3b7b6c3588a92f5d15432e6d4b0d475ca32047dc07cfd47ec9a64d217b4d824d6c
173 7b0a7b
174 0c7b914d3b7bb56c82ce2b4e4415432e6d294b473181315c835c4f1e548654071b0cabb5
175 4d824d614d014d0a7b
176 0a7b814d7b817b6c016c8d8283116faf5b22433e6d4b0d470701078e4f1e145a14544fd4
177 8491b56c7b4d7b0b7b
178 0e7b924d6c880ed9277ad3432e6d294b0d31074f1e548354145a14851454db172a908490
179 4d10217b0a7b
180 087b014d017b8b3b7b4d875fed6fda73d32e3e833e295e478447074f54140214025a88e5
181 1edf80d56c10217b0a7b
182 0b7b816c7b897b935011edd77a195b2e852e6d295e203182314f140314035a871407e0b4
183 d57bc77b0a7b
184 077b816c7b817b4d894d7b4deb5051ec047a2282222e3e883e295e0d475c1e5414011401
185 528a5a495a54e1d28af07b217b0a7b
186 077b814d7b017b8b4d7be8b0305fe3ed34bdd32e892e6d295e0d31074f5414011481525a
187 025a861407985bf0d57b0b7b
188 097b974d7b4db5cc3db95fa9275d19a22e963e6d4b0d4731071e5481541481145a015a87
189 54a507cf9a89ea7b0b7b
190 087b024d8b6c4deb62685fbc443445222e822e6d298529204731071e821e541482145a54
191 8954384f1ee1f28ab54d7b0a7b
192 087b834d7b4d6c946cbf62632dbc2f44450ab12e026d295e0d5c314f1e821e54148b1454
193 383a071e4fdfcb6c4d7b0a7b
194 097b014d016c96e4b9685fecd9dad37343963e6d294b0d473107e14f1e5481544f894f5c
195 314f07cf0cb54d7b0a7b
196 097b034d9225d11668a9d944da0a43b12e3ea1294b47a3318431074f1e4f894f5ca35c07
197 31e05b6c7b0b7b
198 097b944d7b4d6c25b6e2685f2f78197a22b12e026d174b0d830da34731813107820731a3
199 01a38647cfd2bd6c4d7b0a7b
200 0b7b016c94e43d16632dec2f784522b1432e3ea1174b0d5e0d478147318231472087205e
201 0d4b02666c7b0b7b
202 0b7b8c6c4d3f2562162dec2f78197a228b222e023ea1174b295e4b0d4782470d5e875e17
203 4b17d894b57b0b7b
204 087b814d7b817b4d874d483d6216685f2f852fda7a452243834302a16d816d2985295e4b
205 cf0d5e885eca1729e9dd9c6c7b0b7b
206 097b826c7b6c8d6ccc003dd1e2e711d904277a452281222e862e026d3e6d294b8c4b1729
207 6d028b96b1337f6c4d7b0a7b
208 077b944d7b6c4d6c4da469c6b6e2505fbc2f7844da457a4381432e012e823ea1178c17a1
209 6d3ea16d2e5b27ead54d7b0a7b
210 047b864d6c4d3b6c103b843b4dc58cc687c66216635fd9ec788178348134738173438143
211 2e832e3ea13e8b3ed82e3e0a5baf366cf04d7b0a7b
212 017b814d6c826c3bc501c501b281c5b201b28c8669643dd150e7bceca911783482344522
213 01228143968196d881d84386432e0a456f9d6c826c4d7b0a7b
214 964d3b61c559b20be8a477cd77cc8677cd7609006216505f875feca92f1134da4586455d
215 2243962273017388dd152f0f4d7b6c4d7b0a7b
216 886c10b2e8a477cc86bb83bb70a8b38bb313a846ae00acd168e7635f855fec2f78443402
217 340122877a452734450406b583b57b4d7b0b7b
218 8cc5b29305bb70a826659ec3bac381c3288928adee69c6d11650635f015f93a92f784434
219 4434450a34446f4434aa794d21c77b0c7b
220 9ae877bbb32665ba8cd076eeb8765703d01feec2693d25b9efe2635f835fa9d92f022f81
221 af448144118911bc4edeb54d21c7217b0b7b
222 8ca486a89ebad072c4ae42c2531d031d85c2b797693d628262d168016881635f815fbc01
223 bc8aa911bc63081cc9ea6c4d7b0e7b
224 8a77bba8bad0b8aec2531dbe86beb0be37be37be84be1de4b03d853dac25621668016882
225 2d08638263c868856881eaf06c4d014d0e7b
226 8977bb26bad0c4aeb71dbe81be0902098137098209be1d841db79758b601b6831662b916
227 8216b96b866b168f6e4db54d014d827b4d7b0d7b
228 8fa4867c6548d0eec4ae0353b7531dc21d811d53015301ae913fb8723ff39958694ab69f
229 a732a64db5f04d824d7b4d814d7b0e7b
230 88e87786b32665ba8cd082d072b801b891c41f3c1f3c1fee1228c346267cbb954c39b581
231 b54d824db54d844d7b6c7b4d814d7b0f7b
232 87c5b2d6cdbbb3a8f483f465c3ba02ba01288e5601ad019ea055b3bbcd4cb210b54d014d
233 027b826c4d7b017b81217b817b2181217b0b7b
234 863bc5b2e8a477868286bbc181c1b383b37ca81301130141012c877486c0246a59101a85
235 1a4d7b213b7b017b81217b057b81217b0b7b
236 864d3b61c559b2e882e8a4778677cdc0cdc0cd408740054024d66a0b598559c5101a217b
237 867b217b217b217b067b81217b0c7b
238
239 %
240 % Compression made this file 26.46% of the uncompressed size.
241 %
242
243
244 showpage
245
246 % stop using temporary dictionary
247 end
248
249 % restore original state
250 origstate restore
251
252 %%Trailer