summaryrefslogtreecommitdiff
path: root/doc/libgraphics.ps
blob: ffbfbca192745d07d08afb695db31432a2d34199 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
%!PS-Adobe-2.0
%%Version: 0.1
%%Creator: troff, Plan 9 edition
%%DocumentFonts: (atend)
%%Pages: (atend)
%%EndComments
%
% Version 3.3.2 prologue for troff files.
%

/#copies 1 store
/aspectratio 1 def
/formsperpage 1 def
/landscape false def
/linewidth .3 def
/magnification 1 def
/margin 0 def
/orientation 0 def
/resolution 720 def
/rotation 1 def
/xoffset 0 def
/yoffset 0 def

/roundpage true def
/useclippath true def
/pagebbox [0 0 612 792] def

/R  /Times-Roman def
/I  /Times-Italic def
/B  /Times-Bold def
/BI /Times-BoldItalic def
/H  /Helvetica def
/HI /Helvetica-Oblique def
/HB /Helvetica-Bold def
/HX /Helvetica-BoldOblique def
/CW /Courier def
/CO /Courier def
/CI /Courier-Oblique def
/CB /Courier-Bold def
/CX /Courier-BoldOblique def
/PA /Palatino-Roman def
/PI /Palatino-Italic def
/PB /Palatino-Bold def
/PX /Palatino-BoldItalic def
/Hr /Helvetica-Narrow def
/Hi /Helvetica-Narrow-Oblique def
/Hb /Helvetica-Narrow-Bold def
/Hx /Helvetica-Narrow-BoldOblique def
/KR /Bookman-Light def
/KI /Bookman-LightItalic def
/KB /Bookman-Demi def
/KX /Bookman-DemiItalic def
/AR /AvantGarde-Book def
/AI /AvantGarde-BookOblique def
/AB /AvantGarde-Demi def
/AX /AvantGarde-DemiOblique def
/NR /NewCenturySchlbk-Roman def
/NI /NewCenturySchlbk-Italic def
/NB /NewCenturySchlbk-Bold def
/NX /NewCenturySchlbk-BoldItalic def
/ZD /ZapfDingbats def
/ZI /ZapfChancery-MediumItalic def
/S  /S def
/S1 /S1 def
/GR /Symbol def

/inch {72 mul} bind def
/min {2 copy gt {exch} if pop} bind def

/setup {
	counttomark 2 idiv {def} repeat pop

	landscape {/orientation 90 orientation add def} if
	/scaling 72 resolution div def
	linewidth setlinewidth
	1 setlinecap

	pagedimensions
	xcenter ycenter translate
	orientation rotation mul rotate
	width 2 div neg height 2 div translate
	xoffset inch yoffset inch neg translate
	margin 2 div dup neg translate
	magnification dup aspectratio mul scale
	scaling scaling scale

	addmetrics
	0 0 moveto
} def

/pagedimensions {
	useclippath userdict /gotpagebbox known not and {
		/pagebbox [clippath pathbbox newpath] def
		roundpage currentdict /roundpagebbox known and {roundpagebbox} if
	} if
	pagebbox aload pop
	4 -1 roll exch 4 1 roll 4 copy
	landscape {4 2 roll} if
	sub /width exch def
	sub /height exch def
	add 2 div /xcenter exch def
	add 2 div /ycenter exch def
	userdict /gotpagebbox true put
} def

/addmetrics {
	/Symbol /S null Sdefs cf
	/Times-Roman /S1 StandardEncoding dup length array copy S1defs cf
} def

/pagesetup {
	/page exch def
	currentdict /pagedict known currentdict page known and {
		page load pagedict exch get cvx exec
	} if
} def

/decodingdefs [
	{counttomark 2 idiv {y moveto show} repeat}
	{neg /y exch def counttomark 2 idiv {y moveto show} repeat}
	{neg moveto {2 index stringwidth pop sub exch div 0 32 4 -1 roll widthshow} repeat}
	{neg moveto {spacewidth sub 0.0 32 4 -1 roll widthshow} repeat}
	{counttomark 2 idiv {y moveto show} repeat}
	{neg setfunnytext}
] def

/setdecoding {/t decodingdefs 3 -1 roll get bind def} bind def

/w {neg moveto show} bind def
/m {neg dup /y exch def moveto} bind def
/done {/lastpage where {pop lastpage} if} def

/f {
	dup /font exch def findfont exch
	dup /ptsize exch def scaling div dup /size exch def scalefont setfont
	linewidth ptsize mul scaling 10 mul div setlinewidth
	/spacewidth ( ) stringwidth pop def
} bind def

/changefont {
	/fontheight exch def
	/fontslant exch def
	currentfont [
		1 0
		fontheight ptsize div fontslant sin mul fontslant cos div
		fontheight ptsize div
		0 0
	] makefont setfont
} bind def

/sf {f} bind def

/cf {
	dup length 2 idiv
	/entries exch def
	/chtab exch def
	/newencoding exch def
	/newfont exch def

	findfont dup length 1 add dict
	/newdict exch def
	{1 index /FID ne {newdict 3 1 roll put}{pop pop} ifelse} forall

	newencoding type /arraytype eq {newdict /Encoding newencoding put} if

	newdict /Metrics entries dict put
	newdict /Metrics get
	begin
		chtab aload pop
		1 1 entries {pop def} for
		newfont newdict definefont pop
	end
} bind def

%
% A few arrays used to adjust reference points and character widths in some
% of the printer resident fonts. If square roots are too high try changing
% the lines describing /radical and /radicalex to,
%
%	/radical	[0 -75 550 0]
%	/radicalex	[-50 -75 500 0]
%
% Move braceleftbt a bit - default PostScript character is off a bit.
%

/Sdefs [
	/bracketlefttp		[201 500]
	/bracketleftbt		[201 500]
	/bracketrighttp		[-81 380]
	/bracketrightbt		[-83 380]
	/braceleftbt		[203 490]
	/bracketrightex		[220 -125 500 0]
	/radical		[0 0 550 0]
	/radicalex		[-50 0 500 1]
	/parenleftex		[-20 -170 0 0]
	/integral		[100 -50 500 0]
	/infinity		[10 -75 730 0]
] def

/S1defs [
	/underscore		[0 80 500 0]
	/endash			[7 90 650 0]
] def
%
% Version 3.3.2 drawing procedures for dpost. Automatically pulled in when
% needed.
%

/inpath false def
/savematrix matrix def

/Dl {
	inpath
		{neg lineto pop pop}
		{newpath neg moveto neg lineto stroke}
	ifelse
} bind def

/De {
	/y1 exch 2 div def
	/x1 exch 2 div def
	/savematrix savematrix currentmatrix def
	neg exch x1 add exch translate
	x1 y1 scale
	0 0 1 0 360
	inpath
		{1 0 moveto arc savematrix setmatrix}
		{newpath arc savematrix setmatrix stroke}
	ifelse
} bind def

/Da {
	/dy2 exch def
	/dx2 exch def
	/dy1 exch def
	/dx1 exch def
	dy1 add neg exch dx1 add exch
	dx1 dx1 mul dy1 dy1 mul add sqrt
	dy1 dx1 neg atan
	dy2 neg dx2 atan
	inpath
		{arc}
		{newpath arc stroke}
	ifelse
} bind def

/DA {
	/dy2 exch def
	/dx2 exch def
	/dy1 exch def
	/dx1 exch def
	dy1 add neg exch dx1 add exch
	dx1 dx1 mul dy1 dy1 mul add sqrt
	dy1 dx1 neg atan
	dy2 neg dx2 atan
	inpath
		{arcn}
		{newpath arcn stroke}
	ifelse
} bind def

/Ds {
	/y2 exch def
	/x2 exch def
	/y1 exch def
	/x1 exch def
	/y0 exch def
	/x0 exch def
	x0 5 x1 mul add 6 div
	y0 5 y1 mul add -6 div
	x2 5 x1 mul add 6 div
	y2 5 y1 mul add -6 div
	x1 x2 add 2 div
	y1 y2 add -2 div
	inpath
		{curveto}
		{newpath x0 x1 add 2 div y0 y1 add -2 div moveto curveto stroke}
	ifelse
} bind def
%
% Tries to round clipping path dimensions, as stored in array pagebbox, so they
% match one of the known sizes in the papersizes array. Lower left coordinates
% are always set to 0.
%

/roundpagebbox {
    7 dict begin
	/papersizes [8.5 inch 11 inch 14 inch 17 inch] def

	/mappapersize {
		/val exch def
		/slop .5 inch def
		/diff slop def
		/j 0 def
		0 1 papersizes length 1 sub {
			/i exch def
			papersizes i get val sub abs
			dup diff le {/diff exch def /j i def} {pop} ifelse
		} for
		diff slop lt {papersizes j get} {val} ifelse
	} def

	pagebbox 0 0 put
	pagebbox 1 0 put
	pagebbox dup 2 get mappapersize 2 exch put
	pagebbox dup 3 get mappapersize 3 exch put
    end
} bind def

%%EndProlog
%%BeginSetup
mark
%
% Encoding vector and redefinition of findfont for the ISO Latin1 standard.
% The 18 characters missing from ROM based fonts on older printers are noted
% below.
%

/ISOLatin1Encoding [
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/space
	/exclam
	/quotedbl
	/numbersign
	/dollar
	/percent
	/ampersand
	/quoteright
	/parenleft
	/parenright
	/asterisk
	/plus
	/comma
	/minus
	/period
	/slash
	/zero
	/one
	/two
	/three
	/four
	/five
	/six
	/seven
	/eight
	/nine
	/colon
	/semicolon
	/less
	/equal
	/greater
	/question
	/at
	/A
	/B
	/C
	/D
	/E
	/F
	/G
	/H
	/I
	/J
	/K
	/L
	/M
	/N
	/O
	/P
	/Q
	/R
	/S
	/T
	/U
	/V
	/W
	/X
	/Y
	/Z
	/bracketleft
	/backslash
	/bracketright
	/asciicircum
	/underscore
	/quoteleft
	/a
	/b
	/c
	/d
	/e
	/f
	/g
	/h
	/i
	/j
	/k
	/l
	/m
	/n
	/o
	/p
	/q
	/r
	/s
	/t
	/u
	/v
	/w
	/x
	/y
	/z
	/braceleft
	/bar
	/braceright
	/asciitilde
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/.notdef
	/dotlessi
	/grave
	/acute
	/circumflex
	/tilde
	/macron
	/breve
	/dotaccent
	/dieresis
	/.notdef
	/ring
	/cedilla
	/.notdef
	/hungarumlaut
	/ogonek
	/caron
	/space
	/exclamdown
	/cent
	/sterling
	/currency
	/yen
	/brokenbar		% missing
	/section
	/dieresis
	/copyright
	/ordfeminine
	/guillemotleft
	/logicalnot
	/hyphen
	/registered
	/macron
	/degree			% missing
	/plusminus		% missing
	/twosuperior		% missing
	/threesuperior		% missing
	/acute
	/mu			% missing
	/paragraph
	/periodcentered
	/cedilla
	/onesuperior		% missing
	/ordmasculine
	/guillemotright
	/onequarter		% missing
	/onehalf		% missing
	/threequarters		% missing
	/questiondown
	/Agrave
	/Aacute
	/Acircumflex
	/Atilde
	/Adieresis
	/Aring
	/AE
	/Ccedilla
	/Egrave
	/Eacute
	/Ecircumflex
	/Edieresis
	/Igrave
	/Iacute
	/Icircumflex
	/Idieresis
	/Eth			% missing
	/Ntilde
	/Ograve
	/Oacute
	/Ocircumflex
	/Otilde
	/Odieresis
	/multiply		% missing
	/Oslash
	/Ugrave
	/Uacute
	/Ucircumflex
	/Udieresis
	/Yacute			% missing
	/Thorn			% missing
	/germandbls
	/agrave
	/aacute
	/acircumflex
	/atilde
	/adieresis
	/aring
	/ae
	/ccedilla
	/egrave
	/eacute
	/ecircumflex
	/edieresis
	/igrave
	/iacute
	/icircumflex
	/idieresis
	/eth			% missing
	/ntilde
	/ograve
	/oacute
	/ocircumflex
	/otilde
	/odieresis
	/divide			% missing
	/oslash
	/ugrave
	/uacute
	/ucircumflex
	/udieresis
	/yacute			% missing
	/thorn			% missing
	/ydieresis
] def

/NewFontDirectory FontDirectory maxlength dict def

%
% Apparently no guarantee findfont is defined in systemdict so the obvious
%
%	systemdict /findfont get exec
%
% can generate an error. So far the only exception is a VT600 (version 48.0).
%

userdict /@RealFindfont known not {
	userdict begin
		/@RealFindfont systemdict begin /findfont load end def
	end
} if

/findfont {
	dup NewFontDirectory exch known not {
		dup
		%dup systemdict /findfont get exec	% not always in systemdict
		dup userdict /@RealFindfont get exec
		dup /Encoding get StandardEncoding eq {
			dup length dict begin
				{1 index /FID ne {def}{pop pop} ifelse} forall
				/Encoding ISOLatin1Encoding def
				currentdict
			end
			/DummyFontName exch definefont
		} if
		NewFontDirectory 3 1 roll put
	} if
	NewFontDirectory exch get
} bind def

%%Patch from lp
%%EndPatch from lp

setup
%%EndSetup
%%Page: 1 1
/saveobj save def
mark
1 pagesetup
12 /LucidaSans-Demi f
(libgraphics: Design and Implementation) 1642 1230 w
10 /LucidaSans-Italic f
(Rodrigo G. L\363pez) 2469 1470 w
(rgl@antares-labs.eu) 2377 1590 w
(ABSTRACT) 2626 2030 w
(Libgraphics) 1330 2290 w
10 /LucidaSansUnicode00 f
(is) 1930 2290 w
(a) 2044 2290 w
(3D) 2133 2290 w
(computer) 2305 2290 w
(graphics) 2803 2290 w
(library) 3251 2290 w
(that) 3596 2290 w
(provides) 3822 2290 w
(a) 4273 2290 w
(way) 4363 2290 w
(to) 4582 2290 w
(set) 1080 2410 w
(up) 1265 2410 w
(a) 1431 2410 w
(scene,) 1527 2410 w
(fill) 1876 2410 w
(it) 2041 2410 w
(up) 2148 2410 w
(with) 2314 2410 w
(a) 2560 2410 w
(bunch) 2656 2410 w
(of) 2997 2410 w
(models) 3135 2410 w
(\(with) 3528 2410 w
(their) 3806 2410 w
(own) 4071 2410 w
(meshes) 4311 2410 w
(and) 1080 2530 w
(materials\),) 1303 2530 w
(lights) 1857 2530 w
(and) 2170 2530 w
(cameras,) 2393 2530 w
(and) 2870 2530 w
(start) 3093 2530 w
(taking) 3357 2530 w
(pictures) 3703 2530 w
(at) 4136 2530 w
(the) 4271 2530 w
(user) 4470 2530 w
(request.) 1080 2650 w
(It) 1562 2650 w
(implements) 1680 2650 w
(a) 2301 2650 w
(fully) 2408 2650 w
(concurrent) 2669 2650 w
(retained) 3245 2650 w
(mode) 3696 2650 w
(software) 4021 2650 w
(ren\255) 4488 2650 w
(derer,) 1080 2770 w
(with) 1418 2770 w
(support) 1672 2770 w
(for) 2099 2770 w
(vertex) 2287 2770 w
(and) 2639 2770 w
(fragment/pixel) 2868 2770 w
(shaders) 3652 2770 w
(written) 4081 2770 w
(in) 4470 2770 w
(C) 4611 2770 w
(\(not) 1080 2890 w
(GPU) 1326 2890 w
(ones,) 1575 2890 w
(at) 1890 2890 w
(least) 2035 2890 w
(for) 2316 2890 w
(now\),) 2508 2890 w
(and) 2825 2890 w
(featuring) 3057 2890 w
(a) 3550 2890 w
(z-buffer,) 3657 2890 w
(front-) 4152 2890 w
(and) 4500 2890 w
(back-face) 1080 3010 w
(culling,) 1598 3010 w
(textures) 1988 3010 w
(and) 2424 3010 w
(skyboxes,) 2639 3010 w
(directional) 3159 3010 w
(and) 3707 3010 w
(punctual) 3922 3010 w
(lights,) 4378 3010 w
(tangent-space normal mapping, among other things.) 1080 3130 w
10 /LucidaSans-Demi f
(Introduction) 720 3490 w
10 /LucidaSansUnicode00 f
(Write the intro last.) 970 3682 w
10 /LucidaSans-Demi f
(1.) 720 3922 w
(The scene) 873 3922 w
9 /LucidaTypewriter f
(struct) 920 4128 w
(Scene) 1375 4128 w
({) 920 4238 w
(char) 1440 4348 w
(*name;) 1765 4348 w
(Entity) 1440 4458 w
(ents;) 1895 4458 w
(ulong) 1440 4568 w
(nents;) 1830 4568 w
(Cubemap) 1440 4678 w
(*skybox;) 1960 4678 w
(void) 1440 4898 w
(\(*addent\)\(Scene*,) 1765 4898 w
(Entity*\);) 2935 4898 w
(void) 1440 5008 w
(\(*delent\)\(Scene*,) 1765 5008 w
(Entity*\);) 2935 5008 w
(};) 920 5118 w
10 /LucidaSansUnicode00 f
(A) 970 5334 w
10 /LucidaSans-Italic f
(scene) 1073 5334 w
10 /LucidaSansUnicode00 f
(is) 1374 5334 w
(a) 1488 5334 w
(container,) 1577 5334 w
(represented) 2097 5334 w
(as) 2713 5334 w
(a) 2853 5334 w
(graph,) 2942 5334 w
(that) 3291 5334 w
(hosts) 3516 5334 w
(the) 3812 5334 w
(entities) 4001 5334 w
(that) 4392 5334 w
(make) 4618 5334 w
(up) 4915 5334 w
(the) 720 5454 w
(world.) 913 5454 w
(Each) 1286 5454 w
(of) 1545 5454 w
(these) 1680 5454 w
(entities) 1979 5454 w
(has) 2373 5454 w
(a) 2578 5454 w
(model) 2670 5454 w
(made) 3009 5454 w
(out) 3313 5454 w
(of) 3510 5454 w
(a) 3645 5454 w
(series) 3737 5454 w
(of) 4058 5454 w
(meshes,) 4193 5454 w
(which) 4631 5454 w
(in) 4949 5454 w
(turn) 720 5574 w
(are) 977 5574 w
(made) 1184 5574 w
(out) 1506 5574 w
(of) 1721 5574 w
(geometric) 1874 5574 w
(primitives) 2415 5574 w
(\(only) 2950 5574 w
10 /LucidaSans-Italic f
(points) 3242 5574 w
10 /LucidaSansUnicode00 f
(,) 3538 5574 w
10 /LucidaSans-Italic f
(lines) 3625 5574 w
10 /LucidaSansUnicode00 f
(and) 3902 5574 w
10 /LucidaSans-Italic f
(triangles) 4137 5574 w
10 /LucidaSansUnicode00 f
(are) 4623 5574 w
(sup\255) 4831 5574 w
(ported\). Each model also stores a list of materials.) 720 5694 w
(August 24, 2024) 2471 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 1 1
%%Page: 2 2
/saveobj save def
mark
2 pagesetup
10 /LucidaSansUnicode00 f
(\255 2 \255) 2783 480 w
2196 1026 2196 882 Dl
2196 882 2556 882 Dl
2556 882 2556 1026 Dl
2556 1026 2196 1026 Dl
7 /LucidaSansUnicode00 f
(Scene) 2279 968 w
2376 1026 2376 1170 Dl
2376 1170 2448 1170 Dl
2448 1242 2448 1098 Dl
2448 1098 2808 1098 Dl
2808 1098 2808 1242 Dl
2808 1242 2448 1242 Dl
(Entity) 2534 1184 w
2628 1242 2628 1386 Dl
2628 1386 2700 1386 Dl
2700 1458 2700 1314 Dl
2700 1314 3060 1314 Dl
3060 1314 3060 1458 Dl
3060 1458 2700 1458 Dl
(Model) 2777 1400 w
2880 1458 2880 1602 Dl
2880 1602 2952 1602 Dl
2952 1674 2988 1674 Dl
3033 1674 3069 1674 Dl
3114 1674 3150 1674 Dl
3195 1674 3231 1674 Dl
3276 1674 3312 1674 Dl
3312 1674 3312 1638 Dl
3312 1620 3312 1584 Dl
3312 1566 3312 1530 Dl
3312 1530 3276 1530 Dl
3231 1530 3195 1530 Dl
3150 1530 3114 1530 Dl
3069 1530 3033 1530 Dl
2988 1530 2952 1530 Dl
2952 1530 2952 1566 Dl
2952 1584 2952 1620 Dl
2952 1638 2952 1674 Dl
(Mesh) 3043 1616 w
3132 1674 3132 1818 Dl
3132 1818 3204 1818 Dl
3204 1890 3204 1746 Dl
3204 1746 3564 1746 Dl
3564 1746 3564 1890 Dl
3564 1890 3204 1890 Dl
(Primitive) 3237 1832 w
3132 1818 3132 1962 Dl
3132 1962 3132 2106 Dl
3132 2106 3204 2106 Dl
3204 2178 3204 2034 Dl
3204 2034 3564 2034 Dl
3564 2034 3564 2178 Dl
3564 2178 3204 2178 Dl
(Material) 3248 2120 w
10 /LucidaSans-Demi f
(Figure 1) 2219 2376 w
10 /LucidaSansUnicode00 f
(: The scene graph.) 2641 2376 w
10 /LucidaSans-Demi f
(1.1.) 720 2616 w
(Entities) 962 2616 w
9 /LucidaTypewriter f
(struct) 920 2822 w
(Entity) 1375 2822 w
({) 920 2932 w
(RFrame3;) 1440 3042 w
(char) 1440 3152 w
(*name;) 1765 3152 w
(Model) 1440 3262 w
(*mdl;) 1830 3262 w
(Entity) 1440 3482 w
(*prev,) 1895 3482 w
(*next;) 2350 3482 w
(};) 920 3592 w
10 /LucidaSans-Italic f
(Entities) 970 3808 w
10 /LucidaSansUnicode00 f
(represent physical objects in the scene.) 1355 3808 w
10 /LucidaSans-Demi f
(1.2.) 720 4048 w
(Models) 962 4048 w
9 /LucidaTypewriter f
(struct) 920 4254 w
(Model) 1375 4254 w
({) 920 4364 w
(Primitive) 1440 4474 w
(*prims;) 2090 4474 w
(ulong) 1440 4584 w
(nprims;) 1830 4584 w
(Material) 1440 4694 w
(*materials;) 2025 4694 w
(ulong) 1440 4804 w
(nmaterials;) 1830 4804 w
(};) 920 4914 w
10 /LucidaSans-Demi f
(1.3.) 720 5214 w
(Meshes) 962 5214 w
(1.4.) 720 5454 w
(Primitives) 962 5454 w
9 /LucidaTypewriter f
(struct) 920 5660 w
(Primitive) 1375 5660 w
({) 920 5770 w
(int) 1440 5880 w
(type;) 1700 5880 w
(Vertex) 1440 5990 w
(v[3];) 1895 5990 w
(Material) 1440 6100 w
(*mtl;) 2025 6100 w
(Point3) 1440 6210 w
(tangent;) 1895 6210 w
(/*) 2480 6210 w
(used) 2675 6210 w
(for) 3000 6210 w
(normal) 3260 6210 w
(mapping) 3715 6210 w
(*/) 4235 6210 w
(};) 920 6320 w
10 /LucidaSans-Demi f
(1.5.) 720 6620 w
(Materials) 962 6620 w
10 /LucidaSansUnicode00 f
(August 24, 2024) 2471 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 2 2
%%Page: 3 3
/saveobj save def
mark
3 pagesetup
10 /LucidaSansUnicode00 f
(\255 3 \255) 2783 480 w
9 /LucidaTypewriter f
(struct) 920 830 w
(Material) 1375 830 w
({) 920 940 w
(char) 1440 1050 w
(*name;) 1765 1050 w
(Color) 1440 1160 w
(ambient;) 1830 1160 w
(Color) 1440 1270 w
(diffuse;) 1830 1270 w
(Color) 1440 1380 w
(specular;) 1830 1380 w
(double) 1440 1490 w
(shininess;) 1895 1490 w
(Texture) 1440 1600 w
(*diffusemap;) 1960 1600 w
(Texture) 1440 1710 w
(*normalmap;) 1960 1710 w
(};) 920 1820 w
10 /LucidaSans-Demi f
(2.) 720 2120 w
(Cameras) 873 2120 w
(3.) 720 2516 w
(The renderer) 873 2516 w
10 /LucidaSansUnicode00 f
(The) 720 2672 w
10 /LucidaSans-Italic f
(renderer) 938 2672 w
10 /LucidaSansUnicode00 f
(is) 1401 2672 w
(the) 1518 2672 w
(core) 1710 2672 w
(of) 1956 2672 w
(the) 2091 2672 w
(library.) 2283 2672 w
(It) 2662 2672 w
(follows) 2766 2672 w
(a) 3149 2672 w
10 /LucidaSans-Demi f
(retained) 3242 2672 w
(mode) 3708 2672 w
10 /LucidaSansUnicode00 f
(model,) 4032 2672 w
(which) 4404 2672 w
(means) 4723 2672 w
(that) 720 2792 w
(the) 955 2792 w
(user) 1154 2792 w
(won) 1408 2792 w
10 /LucidaSansUnicode20 f
(\031) 1608 2792 w
10 /LucidaSansUnicode00 f
(t) 1640 2792 w
(get) 1721 2792 w
(a) 1920 2792 w
(picture) 2019 2792 w
(until) 2402 2792 w
(the) 2665 2792 w
(entire) 2864 2792 w
(scene) 3189 2792 w
(has) 3509 2792 w
(been) 3721 2792 w
(rendered.) 4002 2792 w
(Thanks) 4548 2792 w
(to) 4942 2792 w
(this) 720 2912 w
(we) 944 2912 w
(can) 1122 2912 w
(also) 1335 2912 w
(clear) 1576 2912 w
(and) 1853 2912 w
(swap) 2078 2912 w
(the) 2369 2912 w
(framebuffers) 2569 2912 w
(without) 3243 2912 w
(their) 3653 2912 w
(intervention,) 3923 2912 w
(they) 4584 2912 w
(only) 4836 2912 w
(need to concern themselves with shooting and ) 720 3032 w
10 /LucidaSansUnicode20 f
(\034) 3016 3032 w
10 /LucidaSansUnicode00 f
(developing) 3053 3032 w
10 /LucidaSansUnicode20 f
(\035) 3586 3032 w
10 /LucidaSansUnicode00 f
(a camera.) 3655 3032 w
(It) 720 3188 w
10 /LucidaSansUnicode20 f
(\031) 786 3188 w
10 /LucidaSansUnicode00 f
(s implemented as a tree of concurrent processes) 818 3188 w
(connected) 3217 3188 w
(by) 3749 3188 w
10 /LucidaTypewriter f
(Channel) 3897 3188 w
10 /LucidaSansUnicode00 f
(s) 4401 3188 w
10 /LucidaSansUnicode20 f
(\024) 4452 3188 w
10 /LucidaSansUnicode00 f
(as) 4552 3188 w
(seen) 4691 3188 w
(in) 4949 3188 w
10 /LucidaSans-Demi f
(Figure) 720 3308 w
(2) 1088 3308 w
10 /LucidaSansUnicode20 f
(\024) 1152 3308 w
10 /LucidaSansUnicode00 f
(,) 1252 3308 w
(spawned) 1326 3308 w
(with) 1795 3308 w
(a) 2042 3308 w
(call) 2139 3308 w
(to) 2345 3308 w
10 /LucidaTypewriter f
(initgraphics) 2485 3308 w
10 /LucidaSansUnicode00 f
(,) 3349 3308 w
(each) 3423 3308 w
(representing) 3689 3308 w
(a) 4347 3308 w
(stage) 4444 3308 w
(of) 4746 3308 w
(the) 4885 3308 w
(pipeline:) 720 3428 w
10 /LucidaSans-Demi f
(3.1.) 720 3668 w
(renderer) 962 3668 w
10 /LucidaSansUnicode00 f
(The) 970 3824 w
10 /LucidaSans-Demi f
(renderer) 1234 3824 w
10 /LucidaSansUnicode00 f
(process,) 1761 3824 w
(the) 2250 3824 w
(root) 2488 3824 w
(of) 2771 3824 w
(the) 2952 3824 w
(tree,) 3190 3824 w
(waits) 3495 3824 w
(on) 3828 3824 w
(a) 4035 3824 w
10 /LucidaTypewriter f
(channel) 4174 3824 w
10 /LucidaSansUnicode00 f
(for) 4762 3824 w
(a) 4985 3824 w
10 /LucidaTypewriter f
(Renderjob) 720 3944 w
10 /LucidaSansUnicode00 f
(sent) 1405 3944 w
(by) 1648 3944 w
(another) 1800 3944 w
(user) 2210 3944 w
(process,) 2456 3944 w
(specifying) 2898 3944 w
(a) 3426 3944 w
(framebuffer,) 3517 3944 w
(a) 4163 3944 w
(scene,) 4254 3944 w
(a) 4598 3944 w
(camera) 4689 3944 w
(and) 720 4064 w
(a) 936 4064 w
(shader) 1027 4064 w
(table.) 1391 4064 w
(It) 1731 4064 w
(walks) 1833 4064 w
(the) 2139 4064 w
(scene) 2330 4064 w
(and) 2642 4064 w
(sends) 2858 4064 w
(each) 3177 4064 w
10 /LucidaTypewriter f
(Entity) 3437 4064 w
10 /LucidaSansUnicode00 f
(individually) 3905 4064 w
(to) 4496 4064 w
(the) 4631 4064 w
(enti\255) 4823 4064 w
(typroc.) 720 4184 w
1026 5498 1026 5138 Dl
1026 5138 1566 5138 Dl
1566 5138 1566 5498 Dl
1566 5498 1026 5498 Dl
7 /LucidaSansUnicode00 f
(Renderjob) 1123 5332 w
1566 5318 1926 5318 Dl
1854 5336 1926 5318 Dl
1853 5331 1925 5318 Dl
1852 5327 1925 5318 Dl
1851 5322 1925 5318 Dl
1851 5318 1925 5318 Dl
1851 5313 1925 5317 Dl
1852 5308 1925 5317 Dl
1853 5304 1925 5317 Dl
1854 5300 1926 5318 Dl
1926 5318 432 432 De
(renderer) 1997 5332 w
2358 5318 2718 5318 Dl
2646 5336 2718 5318 Dl
2645 5331 2717 5318 Dl
2644 5327 2717 5318 Dl
2643 5322 2717 5318 Dl
2643 5318 2717 5318 Dl
2643 5313 2717 5317 Dl
2644 5308 2717 5317 Dl
2645 5304 2717 5317 Dl
2646 5300 2718 5318 Dl
2718 5318 432 432 De
(entityproc) 2763 5332 w
3510 4562 432 432 De
(tiler) 3626 4576 w
(1) 3782 4576 w
3510 5066 432 432 De
(tiler) 3626 5080 w
(2) 3782 5080 w
3510 5570 432 432 De
7 /LucidaSansUnicode20 f
(&) 3691 5584 w
3510 6074 432 432 De
7 /LucidaSansUnicode00 f
(tiler) 3627 6088 w
(n) 3783 6088 w
4302 4562 432 432 De
(rasterizer) 4322 4576 w
(1) 4670 4576 w
4302 5066 432 432 De
(rasterizer) 4322 5080 w
(2) 4670 5080 w
4302 5570 432 432 De
7 /LucidaSansUnicode20 f
(&) 4483 5584 w
4302 6074 432 432 De
7 /LucidaSansUnicode00 f
(rasterizer) 4323 6088 w
(n) 4671 6088 w
3090 5168 3569 4711 Dl
3530 4773 3569 4711 Dl
3526 4771 3569 4711 Dl
3522 4768 3568 4711 Dl
3519 4765 3569 4711 Dl
3515 4762 3569 4711 Dl
3512 4759 3568 4712 Dl
3510 4755 3569 4711 Dl
3507 4751 3568 4711 Dl
3504 4747 3568 4711 Dl
3139 5252 3519 5132 Dl
3456 5170 3519 5132 Dl
3454 5166 3519 5131 Dl
3452 5162 3519 5132 Dl
3450 5158 3519 5132 Dl
3449 5153 3519 5131 Dl
3448 5149 3520 5131 Dl
3447 5145 3519 5132 Dl
3446 5140 3519 5131 Dl
3445 5135 3519 5131 Dl
3139 5383 3519 5503 Dl
3445 5500 3519 5504 Dl
3446 5495 3519 5504 Dl
3447 5490 3519 5503 Dl
3448 5486 3520 5504 Dl
3449 5482 3519 5504 Dl
3450 5477 3519 5503 Dl
3452 5473 3519 5503 Dl
3454 5469 3519 5504 Dl
3456 5465 3519 5503 Dl
3090 5467 3569 5924 Dl
3504 5888 3568 5924 Dl
3507 5884 3568 5924 Dl
3510 5880 3569 5924 Dl
3512 5876 3568 5923 Dl
3515 5873 3569 5924 Dl
3519 5870 3569 5924 Dl
3522 5867 3568 5924 Dl
3526 5864 3569 5924 Dl
3530 5862 3569 5924 Dl
3942 4562 4302 4562 Dl
4230 4580 4302 4562 Dl
4229 4575 4301 4562 Dl
4228 4571 4301 4562 Dl
4227 4566 4301 4562 Dl
4227 4562 4301 4562 Dl
4227 4557 4301 4561 Dl
4228 4552 4301 4561 Dl
4229 4548 4301 4561 Dl
4230 4544 4302 4562 Dl
3908 4677 4335 4949 Dl
4265 4926 4335 4949 Dl
4266 4922 4335 4950 Dl
4268 4918 4334 4949 Dl
4271 4914 4335 4950 Dl
4273 4910 4335 4949 Dl
4275 4906 4334 4949 Dl
4278 4902 4335 4949 Dl
4281 4899 4335 4949 Dl
4284 4896 4335 4950 Dl
3859 4731 4383 5399 Dl
4325 5354 4383 5399 Dl
4328 5351 4383 5399 Dl
4332 5347 4384 5399 Dl
4335 5344 4384 5399 Dl
4338 5341 4384 5399 Dl
4342 5338 4384 5399 Dl
4345 5336 4383 5399 Dl
4350 5334 4384 5399 Dl
4354 5332 4384 5399 Dl
3826 4753 4417 5882 Dl
4368 5827 4417 5882 Dl
4371 5824 4417 5882 Dl
4375 5821 4417 5882 Dl
4379 5819 4417 5882 Dl
4383 5816 4417 5881 Dl
4387 5814 4417 5881 Dl
4391 5813 4416 5882 Dl
4395 5811 4416 5882 Dl
4400 5810 4417 5882 Dl
3908 4950 4335 4678 Dl
4284 4731 4335 4677 Dl
4281 4728 4335 4678 Dl
4278 4725 4335 4678 Dl
4275 4721 4334 4678 Dl
4273 4717 4335 4678 Dl
4271 4713 4335 4677 Dl
4268 4709 4334 4678 Dl
4266 4706 4335 4678 Dl
4265 4701 4335 4678 Dl
3942 5066 4302 5066 Dl
4230 5084 4302 5066 Dl
4229 5079 4301 5066 Dl
4228 5075 4301 5066 Dl
4227 5070 4301 5066 Dl
4227 5066 4301 5066 Dl
4227 5061 4301 5065 Dl
4228 5056 4301 5065 Dl
4229 5052 4301 5065 Dl
4230 5048 4302 5066 Dl
3908 5181 4335 5453 Dl
4265 5430 4335 5453 Dl
4266 5426 4335 5454 Dl
4268 5422 4334 5453 Dl
4271 5418 4335 5454 Dl
4273 5414 4335 5453 Dl
4275 5410 4334 5453 Dl
4278 5406 4335 5453 Dl
4281 5403 4335 5453 Dl
4284 5400 4335 5454 Dl
3859 5235 4383 5903 Dl
4325 5858 4383 5903 Dl
4328 5855 4383 5903 Dl
4332 5851 4384 5903 Dl
4335 5848 4384 5903 Dl
4338 5845 4384 5903 Dl
4342 5842 4384 5903 Dl
4345 5840 4383 5903 Dl
4350 5838 4384 5903 Dl
4354 5836 4384 5903 Dl
10 /LucidaSans-Demi f
(Figure 2) 1437 6488 w
10 /LucidaSansUnicode00 f
(: The rendering graph for a) 1859 6488 w
10 /LucidaSans-Demi f
(2n) 3213 6488 w
10 /LucidaSansUnicode00 f
(processor machine.) 3375 6488 w
10 /LucidaSans-Demi f
(3.2.) 720 6728 w
(entityproc) 962 6728 w
10 /LucidaSansUnicode00 f
(The) 970 6884 w
10 /LucidaSans-Demi f
(entityproc) 1198 6884 w
10 /LucidaSansUnicode00 f
(receives) 1771 6884 w
(an) 2210 6884 w
(entity) 2374 6884 w
(and) 2694 6884 w
(splits) 2921 6884 w
(its) 3228 6884 w
(geometry) 3393 6884 w
(equitatively) 3899 6884 w
(among) 4504 6884 w
(the) 4885 6884 w
(tilers, sending a batch for each of them to process.) 720 7004 w
(August 24, 2024) 2471 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 3 3
%%Page: 4 4
/saveobj save def
mark
4 pagesetup
10 /LucidaSansUnicode00 f
(\255 4 \255) 2783 480 w
10 /LucidaSans-Demi f
(3.3.) 720 840 w
(tilers) 962 840 w
10 /LucidaSansUnicode00 f
(Next,) 970 996 w
(each) 1293 996 w
10 /LucidaSans-Demi f
(tiler) 1580 996 w
10 /LucidaSansUnicode00 f
(gets) 1854 996 w
(to) 2123 996 w
(work) 2284 996 w
(on) 2584 996 w
(their) 2770 996 w
(subset) 3058 996 w
(of) 3441 996 w
(the) 3602 996 w
(geometry,) 3821 996 w
(potentially) 4375 996 w
(in) 4949 996 w
(parallel) 720 1116 w
10 /LucidaSansUnicode20 f
(\024) 1077 1116 w
10 /LucidaSansUnicode00 f
(see) 1177 1116 w
10 /LucidaSans-Demi f
(Figure) 1376 1116 w
(3) 1738 1116 w
10 /LucidaSansUnicode00 f
(.) 1802 1116 w
(They) 1902 1116 w
(walk) 2171 1116 w
(the) 2426 1116 w
(list) 2617 1116 w
(of) 2799 1116 w
(primitives,) 2933 1116 w
(then) 3481 1116 w
(for) 3734 1116 w
(each) 3909 1116 w
(of) 4169 1116 w
(them) 4303 1116 w
(apply) 4587 1116 w
(the) 4885 1116 w
10 /LucidaSans-Demi f
(vertex) 720 1236 w
(shader) 1084 1236 w
10 /LucidaSansUnicode00 f
(to) 1478 1236 w
(its) 1618 1236 w
(vertices) 1777 1236 w
(\(which) 2192 1236 w
(expects) 2548 1236 w
(clip) 2965 1236 w
(space) 3179 1236 w
(coordinates) 3497 1236 w
(in) 4107 1236 w
(return\),) 4241 1236 w
(perform) 4648 1236 w
(frustum) 720 1356 w
(culling) 1139 1356 w
(and) 1499 1356 w
(clipping,) 1715 1356 w
(back-face) 2171 1356 w
(culling,) 2691 1356 w
(and) 3083 1356 w
(then) 3299 1356 w
(project) 3552 1356 w
(them) 3927 1356 w
(into) 4210 1356 w
(the) 4434 1356 w
(viewport) 4624 1356 w
(to) 720 1476 w
(obtain) 869 1476 w
(their) 1227 1476 w
(screen) 1503 1476 w
(space) 1871 1476 w
(coordinates.) 2198 1476 w
(Following) 2880 1476 w
(this) 3395 1476 w
(step,) 3625 1476 w
(they) 3915 1476 w
(build) 4173 1476 w
(a) 4470 1476 w
(bounding) 4576 1476 w
(box,) 720 1596 w
(used) 973 1596 w
(to) 1241 1596 w
(allocate) 1375 1596 w
(each) 1783 1596 w
(primitive) 2042 1596 w
(into) 2506 1596 w
(a) 2730 1596 w
(rasterization) 2820 1596 w
(bucket,) 3466 1596 w
(or) 3860 1596 w
10 /LucidaSans-Demi f
(tile) 3997 1596 w
10 /LucidaSansUnicode00 f
(,) 4163 1596 w
(managed) 4230 1596 w
(by) 4711 1596 w
(one) 4861 1596 w
(of) 720 1716 w
(the) 859 1716 w
(rasterizers;) 1055 1716 w
(as) 1643 1716 w
(illustrated) 1790 1716 w
(in) 2320 1716 w
10 /LucidaSans-Demi f
(Figure) 2452 1716 w
(4) 2819 1716 w
10 /LucidaSansUnicode00 f
(.) 2883 1716 w
(If) 2988 1716 w
(it) 3095 1716 w
(spans) 3202 1716 w
(multiple) 3526 1716 w
(tiles,) 3966 1716 w
(it) 4242 1716 w
(will) 4350 1716 w
(be) 4556 1716 w
(copied) 4717 1716 w
(and sent to each of them.) 720 1836 w
2070 2826 2106 2826 Dl
2142 2826 2178 2826 Dl
2214 2826 2250 2826 Dl
2286 2826 2322 2826 Dl
2358 2826 2394 2826 Dl
2430 2826 2466 2826 Dl
2502 2826 2538 2826 Dl
2574 2826 2610 2826 Dl
2646 2826 2682 2826 Dl
2718 2826 2754 2826 Dl
2790 2826 2826 2826 Dl
2862 2826 2898 2826 Dl
2934 2826 2970 2826 Dl
2970 2826 2970 2790 Dl
2970 2772 2970 2736 Dl
2970 2718 2970 2682 Dl
2970 2682 2934 2682 Dl
2898 2682 2862 2682 Dl
2826 2682 2790 2682 Dl
2754 2682 2718 2682 Dl
2682 2682 2646 2682 Dl
2610 2682 2574 2682 Dl
2538 2682 2502 2682 Dl
2466 2682 2430 2682 Dl
2394 2682 2358 2682 Dl
2322 2682 2286 2682 Dl
2250 2682 2214 2682 Dl
2178 2682 2142 2682 Dl
2106 2682 2070 2682 Dl
2070 2682 2070 2718 Dl
2070 2736 2070 2772 Dl
2070 2790 2070 2826 Dl
7 /LucidaSansUnicode00 f
(tile 1) 2435 2768 w
2070 2970 2106 2970 Dl
2142 2970 2178 2970 Dl
2214 2970 2250 2970 Dl
2286 2970 2322 2970 Dl
2358 2970 2394 2970 Dl
2430 2970 2466 2970 Dl
2502 2970 2538 2970 Dl
2574 2970 2610 2970 Dl
2646 2970 2682 2970 Dl
2718 2970 2754 2970 Dl
2790 2970 2826 2970 Dl
2862 2970 2898 2970 Dl
2934 2970 2970 2970 Dl
2970 2970 2970 2934 Dl
2970 2916 2970 2880 Dl
2970 2862 2970 2826 Dl
2970 2826 2934 2826 Dl
2898 2826 2862 2826 Dl
2826 2826 2790 2826 Dl
2754 2826 2718 2826 Dl
2682 2826 2646 2826 Dl
2610 2826 2574 2826 Dl
2538 2826 2502 2826 Dl
2466 2826 2430 2826 Dl
2394 2826 2358 2826 Dl
2322 2826 2286 2826 Dl
2250 2826 2214 2826 Dl
2178 2826 2142 2826 Dl
2106 2826 2070 2826 Dl
2070 2826 2070 2862 Dl
2070 2880 2070 2916 Dl
2070 2934 2070 2970 Dl
(tile 2) 2435 2912 w
2070 3114 2106 3114 Dl
2142 3114 2178 3114 Dl
2214 3114 2250 3114 Dl
2286 3114 2322 3114 Dl
2358 3114 2394 3114 Dl
2430 3114 2466 3114 Dl
2502 3114 2538 3114 Dl
2574 3114 2610 3114 Dl
2646 3114 2682 3114 Dl
2718 3114 2754 3114 Dl
2790 3114 2826 3114 Dl
2862 3114 2898 3114 Dl
2934 3114 2970 3114 Dl
2970 3114 2970 3078 Dl
2970 3060 2970 3024 Dl
2970 3006 2970 2970 Dl
2970 2970 2934 2970 Dl
2898 2970 2862 2970 Dl
2826 2970 2790 2970 Dl
2754 2970 2718 2970 Dl
2682 2970 2646 2970 Dl
2610 2970 2574 2970 Dl
2538 2970 2502 2970 Dl
2466 2970 2430 2970 Dl
2394 2970 2358 2970 Dl
2322 2970 2286 2970 Dl
2250 2970 2214 2970 Dl
2178 2970 2142 2970 Dl
2106 2970 2070 2970 Dl
2070 2970 2070 3006 Dl
2070 3024 2070 3060 Dl
2070 3078 2070 3114 Dl
7 /LucidaSansUnicode20 f
(&) 2485 3056 w
2070 3258 2106 3258 Dl
2142 3258 2178 3258 Dl
2214 3258 2250 3258 Dl
2286 3258 2322 3258 Dl
2358 3258 2394 3258 Dl
2430 3258 2466 3258 Dl
2502 3258 2538 3258 Dl
2574 3258 2610 3258 Dl
2646 3258 2682 3258 Dl
2718 3258 2754 3258 Dl
2790 3258 2826 3258 Dl
2862 3258 2898 3258 Dl
2934 3258 2970 3258 Dl
2970 3258 2970 3222 Dl
2970 3204 2970 3168 Dl
2970 3150 2970 3114 Dl
2970 3114 2934 3114 Dl
2898 3114 2862 3114 Dl
2826 3114 2790 3114 Dl
2754 3114 2718 3114 Dl
2682 3114 2646 3114 Dl
2610 3114 2574 3114 Dl
2538 3114 2502 3114 Dl
2466 3114 2430 3114 Dl
2394 3114 2358 3114 Dl
2322 3114 2286 3114 Dl
2250 3114 2214 3114 Dl
2178 3114 2142 3114 Dl
2106 3114 2070 3114 Dl
2070 3114 2070 3150 Dl
2070 3168 2070 3204 Dl
2070 3222 2070 3258 Dl
7 /LucidaSansUnicode00 f
(tile n) 2435 3200 w
2034 3294 2034 2646 Dl
2034 2646 3006 2646 Dl
3006 2646 3006 3294 Dl
3006 3294 2034 3294 Dl
(Framebuf) 1675 2696 w
3330 2214 432 432 De
(rasterizer) 3350 2228 w
(1) 3698 2228 w
3330 2718 432 432 De
(rasterizer) 3350 2732 w
(2) 3698 2732 w
3330 3222 432 432 De
7 /LucidaSansUnicode20 f
(&) 3511 3236 w
3330 3726 432 432 De
7 /LucidaSansUnicode00 f
(rasterizer) 3351 3740 w
(n) 3699 3740 w
2970 2754 3330 2214 Dl
2970 2898 3330 2718 Dl
2970 3042 3330 3222 Dl
2970 3186 3330 3726 Dl
10 /LucidaSans-Demi f
(Figure 3) 2180 4140 w
10 /LucidaSansUnicode00 f
(: Per tile rasterizers.) 2602 4140 w
10 /LucidaSans-Demi f
(3.4.) 720 4380 w
(rasterizers) 962 4380 w
10 /LucidaSansUnicode00 f
(Finally,) 970 4536 w
(the) 1346 4536 w
10 /LucidaSans-Demi f
(rasterizers) 1535 4536 w
10 /LucidaSansUnicode00 f
(receive) 2128 4536 w
(the) 2503 4536 w
(primitive) 2692 4536 w
(in) 3155 4536 w
(screen) 3280 4536 w
(space,) 3631 4536 w
(slice) 3974 4536 w
(it) 4225 4536 w
(to) 4326 4536 w
(fit) 4459 4536 w
(their) 4597 4536 w
(tile,) 4857 4536 w
(and) 720 4656 w
(apply) 937 4656 w
(a) 1236 4656 w
(rasterization) 1328 4656 w
(routine) 1976 4656 w
(based) 2361 4656 w
(on) 2686 4656 w
(its) 2846 4656 w
(type.) 3000 4656 w
(For) 3277 4656 w
(each) 3470 4656 w
(of) 3731 4656 w
(the) 3866 4656 w
(pixels,) 4058 4656 w
(a) 4416 4656 w
10 /LucidaSans-Demi f
(depth) 4508 4656 w
(test) 4842 4656 w
10 /LucidaSansUnicode00 f
(is) 720 4776 w
(performed,) 845 4776 w
(discarding) 1433 4776 w
(fragments) 1984 4776 w
(that) 2523 4776 w
(are) 2759 4776 w
(further) 2956 4776 w
(away.) 3337 4776 w
(Then) 3653 4776 w
(a) 3941 4776 w
10 /LucidaSans-Demi f
(fragment) 4042 4776 w
(shader) 4562 4776 w
10 /LucidaSansUnicode00 f
(is) 4960 4776 w
(applied and the result written to the framebuffer after blending.) 720 4896 w
(August 24, 2024) 2471 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 4 4
%%Page: 5 5
/saveobj save def
mark
5 pagesetup
10 /LucidaSansUnicode00 f
(\255 5 \255) 2783 480 w
2070 1710 2106 1710 Dl
2142 1710 2178 1710 Dl
2214 1710 2250 1710 Dl
2286 1710 2322 1710 Dl
2358 1710 2394 1710 Dl
2430 1710 2466 1710 Dl
2502 1710 2538 1710 Dl
2574 1710 2610 1710 Dl
2646 1710 2682 1710 Dl
2718 1710 2754 1710 Dl
2790 1710 2826 1710 Dl
2862 1710 2898 1710 Dl
2934 1710 2970 1710 Dl
2970 1710 2970 1674 Dl
2970 1656 2970 1620 Dl
2970 1602 2970 1566 Dl
2970 1566 2934 1566 Dl
2898 1566 2862 1566 Dl
2826 1566 2790 1566 Dl
2754 1566 2718 1566 Dl
2682 1566 2646 1566 Dl
2610 1566 2574 1566 Dl
2538 1566 2502 1566 Dl
2466 1566 2430 1566 Dl
2394 1566 2358 1566 Dl
2322 1566 2286 1566 Dl
2250 1566 2214 1566 Dl
2178 1566 2142 1566 Dl
2106 1566 2070 1566 Dl
2070 1566 2070 1602 Dl
2070 1620 2070 1656 Dl
2070 1674 2070 1710 Dl
7 /LucidaSansUnicode00 f
(1) 2498 1652 w
2070 1854 2106 1854 Dl
2142 1854 2178 1854 Dl
2214 1854 2250 1854 Dl
2286 1854 2322 1854 Dl
2358 1854 2394 1854 Dl
2430 1854 2466 1854 Dl
2502 1854 2538 1854 Dl
2574 1854 2610 1854 Dl
2646 1854 2682 1854 Dl
2718 1854 2754 1854 Dl
2790 1854 2826 1854 Dl
2862 1854 2898 1854 Dl
2934 1854 2970 1854 Dl
2970 1854 2970 1818 Dl
2970 1800 2970 1764 Dl
2970 1746 2970 1710 Dl
2970 1710 2934 1710 Dl
2898 1710 2862 1710 Dl
2826 1710 2790 1710 Dl
2754 1710 2718 1710 Dl
2682 1710 2646 1710 Dl
2610 1710 2574 1710 Dl
2538 1710 2502 1710 Dl
2466 1710 2430 1710 Dl
2394 1710 2358 1710 Dl
2322 1710 2286 1710 Dl
2250 1710 2214 1710 Dl
2178 1710 2142 1710 Dl
2106 1710 2070 1710 Dl
2070 1710 2070 1746 Dl
2070 1764 2070 1800 Dl
2070 1818 2070 1854 Dl
(2) 2498 1796 w
2070 1998 2106 1998 Dl
2142 1998 2178 1998 Dl
2214 1998 2250 1998 Dl
2286 1998 2322 1998 Dl
2358 1998 2394 1998 Dl
2430 1998 2466 1998 Dl
2502 1998 2538 1998 Dl
2574 1998 2610 1998 Dl
2646 1998 2682 1998 Dl
2718 1998 2754 1998 Dl
2790 1998 2826 1998 Dl
2862 1998 2898 1998 Dl
2934 1998 2970 1998 Dl
2970 1998 2970 1962 Dl
2970 1944 2970 1908 Dl
2970 1890 2970 1854 Dl
2970 1854 2934 1854 Dl
2898 1854 2862 1854 Dl
2826 1854 2790 1854 Dl
2754 1854 2718 1854 Dl
2682 1854 2646 1854 Dl
2610 1854 2574 1854 Dl
2538 1854 2502 1854 Dl
2466 1854 2430 1854 Dl
2394 1854 2358 1854 Dl
2322 1854 2286 1854 Dl
2250 1854 2214 1854 Dl
2178 1854 2142 1854 Dl
2106 1854 2070 1854 Dl
2070 1854 2070 1890 Dl
2070 1908 2070 1944 Dl
2070 1962 2070 1998 Dl
7 /LucidaSansUnicode20 f
(&) 2485 1940 w
2070 2142 2106 2142 Dl
2142 2142 2178 2142 Dl
2214 2142 2250 2142 Dl
2286 2142 2322 2142 Dl
2358 2142 2394 2142 Dl
2430 2142 2466 2142 Dl
2502 2142 2538 2142 Dl
2574 2142 2610 2142 Dl
2646 2142 2682 2142 Dl
2718 2142 2754 2142 Dl
2790 2142 2826 2142 Dl
2862 2142 2898 2142 Dl
2934 2142 2970 2142 Dl
2970 2142 2970 2106 Dl
2970 2088 2970 2052 Dl
2970 2034 2970 1998 Dl
2970 1998 2934 1998 Dl
2898 1998 2862 1998 Dl
2826 1998 2790 1998 Dl
2754 1998 2718 1998 Dl
2682 1998 2646 1998 Dl
2610 1998 2574 1998 Dl
2538 1998 2502 1998 Dl
2466 1998 2430 1998 Dl
2394 1998 2358 1998 Dl
2322 1998 2286 1998 Dl
2250 1998 2214 1998 Dl
2178 1998 2142 1998 Dl
2106 1998 2070 1998 Dl
2070 1998 2070 2034 Dl
2070 2052 2070 2088 Dl
2070 2106 2070 2142 Dl
7 /LucidaSansUnicode00 f
(n) 2499 2084 w
2142 1890 2592 1746 Dl
2592 1746 2754 2070 Dl
2754 2070 2142 1890 Dl
2034 2178 2034 1530 Dl
2034 1530 3006 1530 Dl
3006 1530 3006 2178 Dl
3006 2178 2034 2178 Dl
(Framebuf) 1675 1580 w
3330 1098 432 432 De
(rasterizer) 3350 1112 w
(1) 3698 1112 w
3330 1602 432 432 De
(rasterizer) 3350 1616 w
(2) 3698 1616 w
3330 2106 432 432 De
7 /LucidaSansUnicode20 f
(&) 3511 2120 w
3330 2610 432 432 De
7 /LucidaSansUnicode00 f
(rasterizer) 3351 2624 w
(n) 3699 2624 w
2970 1782 3330 1602 Dl
3273 1650 3329 1602 Dl
3270 1646 3329 1602 Dl
3268 1643 3329 1602 Dl
3265 1639 3329 1602 Dl
3263 1635 3329 1602 Dl
3261 1630 3329 1602 Dl
3260 1626 3329 1602 Dl
3258 1622 3329 1602 Dl
3257 1617 3329 1602 Dl
2970 1926 3330 2106 Dl
3257 2090 3329 2105 Dl
3258 2085 3329 2105 Dl
3260 2081 3329 2105 Dl
3261 2077 3329 2105 Dl
3263 2072 3329 2105 Dl
3265 2068 3329 2105 Dl
3268 2064 3329 2105 Dl
3270 2061 3329 2105 Dl
3273 2057 3329 2105 Dl
2970 2070 3330 2610 Dl
3275 2560 3329 2609 Dl
3278 2556 3329 2609 Dl
3281 2553 3329 2609 Dl
3285 2550 3329 2609 Dl
3288 2548 3329 2609 Dl
3292 2545 3329 2609 Dl
3296 2543 3329 2609 Dl
3300 2541 3329 2609 Dl
3304 2540 3329 2609 Dl
10 /LucidaSans-Demi f
(Figure 4) 2073 3024 w
10 /LucidaSansUnicode00 f
(: Raster task scheduling.) 2495 3024 w
10 /LucidaSans-Demi f
(4.) 720 3264 w
(Frames of reference) 873 3264 w
10 /LucidaSansUnicode00 f
(Frames are right-handed throughout every stage.) 970 3420 w
gsave
newpath
3586 4086 m
/inpath true def
 0.7 setgray
2790 4302 14 14 De
 gsave eofill grestore 0 setgray stroke
grestore
/inpath false def
7 /LucidaSansUnicode00 f
(p) 2703 4316 w
2797 4302 3514 4364 Dl
3441 4376 3514 4365 Dl
3441 4371 3515 4364 Dl
3440 4367 3514 4365 Dl
3440 4362 3514 4364 Dl
3441 4358 3515 4364 Dl
3441 4353 3514 4363 Dl
3441 4349 3513 4364 Dl
3443 4345 3514 4365 Dl
3444 4340 3513 4364 Dl
(bx) 3543 4378 w
2797 4302 2797 3582 Dl
2815 3654 2797 3582 Dl
2811 3654 2798 3582 Dl
2806 3655 2797 3582 Dl
2801 3656 2797 3582 Dl
2797 3656 2797 3582 Dl
2793 3656 2797 3582 Dl
2788 3655 2797 3582 Dl
2783 3654 2796 3582 Dl
2779 3654 2797 3582 Dl
(by) 2685 3596 w
2797 4302 2246 4590 Dl
2301 4541 2246 4589 Dl
2304 4543 2246 4589 Dl
2307 4547 2246 4589 Dl
2309 4551 2246 4589 Dl
2311 4555 2246 4589 Dl
2313 4559 2246 4589 Dl
2315 4564 2246 4589 Dl
2317 4568 2246 4589 Dl
2318 4572 2246 4589 Dl
(bz) 2132 4604 w
10 /LucidaSans-Demi f
(Figure 5) 1897 4788 w
10 /LucidaSansUnicode00 f
(: Example right-handed rframe.) 2319 4788 w
10 /LucidaSans-Demi f
(5.) 720 5028 w
(Viewports) 873 5028 w
10 /LucidaSansUnicode00 f
(A) 970 5184 w
10 /LucidaSans-Italic f
(viewport) 1084 5184 w
10 /LucidaSansUnicode00 f
(is) 1547 5184 w
(a) 1673 5184 w
(sort) 1774 5184 w
(of) 2010 5184 w
(virtual) 2154 5184 w
(framebuffer,) 2505 5184 w
(a) 3161 5184 w
(device) 3262 5184 w
(that) 3615 5184 w
(lets) 3852 5184 w
(users) 4071 5184 w
(configure) 4378 5184 w
(the) 4885 5184 w
(way) 720 5304 w
(they) 940 5304 w
(visualize) 1183 5304 w
(a) 1639 5304 w
(framebuffer,) 1730 5304 w
(which) 2375 5304 w
(changes) 2691 5304 w
(the) 3125 5304 w
(resulting) 3315 5304 w
10 /LucidaSans-Italic f
(image) 3779 5304 w
10 /LucidaSansUnicode00 f
(\(6\)) 4076 5304 w
(after) 4240 5304 w
(a) 4501 5304 w
(call) 4591 5304 w
(to) 4790 5304 w
(its) 4923 5304 w
10 /LucidaTypewriter f
(draw) 720 5424 w
10 /LucidaSansUnicode00 f
(or) 1067 5424 w
10 /LucidaTypewriter f
(memdraw) 1228 5424 w
10 /LucidaSansUnicode00 f
(methods.) 1791 5424 w
(So) 2337 5424 w
(far) 2511 5424 w
(the) 2703 5424 w
(only) 2917 5424 w
(feature) 3180 5424 w
(available) 3583 5424 w
(is) 4065 5424 w
(upscaling,) 4204 5424 w
(which) 4759 5424 w
(includes) 720 5544 w
(user-defined) 1174 5544 w
(filters) 1859 5544 w
(for) 2190 5544 w
(specific) 2380 5544 w
(ratios,) 2798 5544 w
(such) 3155 5544 w
(as) 3432 5544 w
(the) 3589 5544 w
(family) 3795 5544 w
(of) 4141 5544 w
(pixel) 4289 5544 w
(art) 4577 5544 w
(filters) 4760 5544 w
10 /LucidaSans-Italic f
(Scale[234]x) 720 5664 w
10 /LucidaSansUnicode00 f
(,) 1277 5664 w
(used) 1360 5664 w
(for) 1644 5664 w
(2x2,) 1835 5664 w
(3x3) 2106 5664 w
(and) 2345 5664 w
(4x4) 2577 5664 w
(scaling) 2816 5664 w
(respectively) 3207 5664 w
10 /LucidaSans-Italic f
([REF01]) 3780 5664 w
10 /LucidaSansUnicode00 f
(.) 4144 5664 w
(Users) 4260 5664 w
(control) 4580 5664 w
(it) 4974 5664 w
(with calls to the viewport) 720 5784 w
10 /LucidaSansUnicode20 f
(\031) 1937 5784 w
10 /LucidaSansUnicode00 f
(s) 1969 5784 w
10 /LucidaTypewriter f
(setscale) 2052 5784 w
10 /LucidaSansUnicode00 f
(and) 2660 5784 w
10 /LucidaTypewriter f
(setscalefilter) 2872 5784 w
10 /LucidaSansUnicode00 f
(methods.) 3912 5784 w
(August 24, 2024) 2471 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 5 5
%%Page: 6 6
/saveobj save def
mark
6 pagesetup
10 /LucidaSansUnicode00 f
(\255 6 \255) 2783 480 w
1836 2394 1836 954 Dl
1836 954 3996 954 Dl
3996 954 3996 2394 Dl
3996 2394 1836 2394 Dl
7 /LucidaSansUnicode00 f
(Framebuf) 2755 2264 w
gsave
newpath
2916 2250 m
/inpath true def
 0.7 setgray
1828 954 14 14 De
 gsave eofill grestore 0 setgray stroke
grestore
/inpath false def
(p) 1742 968 w
1836 954 2556 954 Dl
2484 972 2556 954 Dl
2483 967 2555 954 Dl
2482 963 2555 954 Dl
2481 958 2555 954 Dl
2481 954 2555 954 Dl
2481 949 2555 953 Dl
2482 944 2555 953 Dl
2483 940 2555 953 Dl
2484 936 2556 954 Dl
(bx) 2513 896 w
1836 954 1836 1674 Dl
1818 1602 1836 1674 Dl
1822 1601 1835 1673 Dl
1826 1600 1835 1673 Dl
1831 1599 1835 1673 Dl
1836 1599 1836 1673 Dl
1840 1599 1836 1673 Dl
1845 1600 1836 1673 Dl
1849 1601 1836 1673 Dl
1854 1602 1836 1674 Dl
(by) 1724 1688 w
10 /LucidaSans-Demi f
(Figure 6) 1932 2592 w
10 /LucidaSansUnicode00 f
(: Illustration of a 3:2 viewport.) 2354 2592 w
10 /LucidaSans-Demi f
(References) 720 2832 w
10 /LucidaSansUnicode00 f
([REF01]https://www.scale2x.it/) 720 3024 w
(August 24, 2024) 2471 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 6 6
%%Trailer
done
%%DocumentFonts: LucidaSansUnicode20 LucidaSansUnicode00 LucidaSans-Demi LucidaSans-Italic LucidaTypewriter
%%Pages: 6