summaryrefslogtreecommitdiff
path: root/doc/libgraphics.ps
blob: 3bce2d2d015ef56b7711cadfcad941856664b208 (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
%!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 1220 w
10 /LucidaSans-Italic f
(Rodrigo G. L\363pez) 2469 1480 w
(rgl@antares-labs.eu) 2377 1620 w
10 /LucidaSans-Demi f
(Introduction) 720 2280 w
10 /LucidaSans-Italic f
(Libgraphics) 720 2436 w
10 /LucidaSansUnicode00 f
(is) 1323 2436 w
(a) 1440 2436 w
(3D) 1532 2436 w
(computer) 1707 2436 w
(graphics) 2208 2436 w
(library) 2659 2436 w
(that) 3006 2436 w
(provides) 3234 2436 w
(a) 3687 2436 w
(way) 3779 2436 w
(to) 4000 2436 w
(set) 4135 2436 w
(up) 4316 2436 w
(a) 4478 2436 w
(scene,) 4570 2436 w
(fill) 4916 2436 w
(it) 720 2556 w
(up) 821 2556 w
(with) 980 2556 w
(a) 1219 2556 w
(bunch) 1308 2556 w
(of) 1642 2556 w
(models) 1774 2556 w
(\(with) 2161 2556 w
(their) 2433 2556 w
(own) 2692 2556 w
(meshes) 2926 2556 w
(and) 3329 2556 w
(materials\),) 3543 2556 w
(lights) 4088 2556 w
(and) 4392 2556 w
(cameras,) 4606 2556 w
(and) 720 2676 w
(start) 939 2676 w
(taking) 1199 2676 w
(pictures) 1541 2676 w
(at) 1971 2676 w
(the) 2103 2676 w
(user) 2298 2676 w
(request.) 2548 2676 w
(It) 3018 2676 w
(implements) 3124 2676 w
(a) 3733 2676 w
(fully) 3828 2676 w
(concurrent) 4077 2676 w
(retained) 4641 2676 w
(mode) 720 2796 w
(software) 1033 2796 w
(renderer,) 1488 2796 w
(with) 1976 2796 w
(support) 2221 2796 w
(for) 2639 2796 w
(vertex) 2818 2796 w
(and) 3161 2796 w
(fragment/pixel) 3380 2796 w
(shaders) 4153 2796 w
(written) 4571 2796 w
(in) 4949 2796 w
(C \(not GPU ones, at least for now\), a z-buffer, front- and back-face culling, textures) 720 2916 w
(and) 4860 2916 w
(skyboxes, directional and punctual lights, tangent-space normal mapping, ???) 720 3036 w
10 /LucidaSans-Demi f
(The renderer) 720 3276 w
10 /LucidaSansUnicode00 f
(The) 720 3432 w
10 /LucidaSans-Italic f
(renderer) 938 3432 w
10 /LucidaSansUnicode00 f
(is) 1401 3432 w
(the) 1518 3432 w
(core) 1710 3432 w
(of) 1956 3432 w
(the) 2091 3432 w
(library.) 2283 3432 w
(It) 2662 3432 w
(follows) 2766 3432 w
(a) 3149 3432 w
10 /LucidaSans-Demi f
(retained) 3242 3432 w
(mode) 3708 3432 w
10 /LucidaSansUnicode00 f
(model,) 4032 3432 w
(which) 4404 3432 w
(means) 4723 3432 w
(that) 720 3552 w
(the) 955 3552 w
(user) 1154 3552 w
(won) 1408 3552 w
10 /LucidaSansUnicode20 f
(\031) 1608 3552 w
10 /LucidaSansUnicode00 f
(t) 1640 3552 w
(get) 1721 3552 w
(a) 1920 3552 w
(picture) 2019 3552 w
(until) 2402 3552 w
(the) 2665 3552 w
(entire) 2864 3552 w
(scene) 3189 3552 w
(has) 3509 3552 w
(been) 3721 3552 w
(rendered.) 4002 3552 w
(Thanks) 4548 3552 w
(to) 4942 3552 w
(this) 720 3672 w
(we) 944 3672 w
(can) 1122 3672 w
(also) 1335 3672 w
(clear) 1576 3672 w
(and) 1853 3672 w
(swap) 2078 3672 w
(the) 2369 3672 w
(framebuffers) 2569 3672 w
(without) 3243 3672 w
(their) 3653 3672 w
(intervention,) 3923 3672 w
(they) 4584 3672 w
(only) 4836 3672 w
(need to concern themselves with shooting and ) 720 3792 w
10 /LucidaSansUnicode20 f
(\034) 3016 3792 w
10 /LucidaSansUnicode00 f
(developing) 3053 3792 w
10 /LucidaSansUnicode20 f
(\035) 3586 3792 w
10 /LucidaSansUnicode00 f
(a camera.) 3655 3792 w
(It) 720 3948 w
10 /LucidaSansUnicode20 f
(\031) 786 3948 w
10 /LucidaSansUnicode00 f
(s implemented as a tree of concurrent processes) 818 3948 w
(connected) 3217 3948 w
(by) 3749 3948 w
10 /LucidaTypewriter f
(Channel) 3897 3948 w
10 /LucidaSansUnicode00 f
(s) 4401 3948 w
10 /LucidaSansUnicode20 f
(\024) 4452 3948 w
10 /LucidaSansUnicode00 f
(as) 4552 3948 w
(seen) 4691 3948 w
(in) 4949 3948 w
10 /LucidaSans-Demi f
(Figure) 720 4068 w
(1) 1088 4068 w
10 /LucidaSansUnicode20 f
(\024) 1152 4068 w
10 /LucidaSansUnicode00 f
(,) 1252 4068 w
(spawned) 1326 4068 w
(with) 1795 4068 w
(a) 2042 4068 w
(call) 2139 4068 w
(to) 2345 4068 w
10 /LucidaTypewriter f
(initgraphics) 2485 4068 w
10 /LucidaSansUnicode00 f
(,) 3349 4068 w
(each) 3423 4068 w
(representing) 3689 4068 w
(a) 4347 4068 w
(stage) 4444 4068 w
(of) 4746 4068 w
(the) 4885 4068 w
(pipeline:) 720 4188 w
(The) 970 4344 w
10 /LucidaSans-Demi f
(renderer) 1234 4344 w
10 /LucidaSansUnicode00 f
(process,) 1761 4344 w
(the) 2250 4344 w
(root) 2488 4344 w
(of) 2771 4344 w
(the) 2952 4344 w
(tree,) 3190 4344 w
(waits) 3495 4344 w
(on) 3828 4344 w
(a) 4035 4344 w
10 /LucidaTypewriter f
(channel) 4174 4344 w
10 /LucidaSansUnicode00 f
(for) 4762 4344 w
(a) 4985 4344 w
10 /LucidaTypewriter f
(Renderjob) 970 4464 w
10 /LucidaSansUnicode00 f
(sent) 1670 4464 w
(by) 1928 4464 w
(another) 2095 4464 w
(user) 2520 4464 w
(process,) 2781 4464 w
(specifying) 3238 4464 w
(a) 3781 4464 w
(scene,) 3887 4464 w
(a) 4246 4464 w
(camera) 4352 4464 w
(and) 4754 4464 w
(a) 4985 4464 w
(shader) 970 4584 w
(table.) 1338 4584 w
(It) 1682 4584 w
(walks) 1788 4584 w
(the) 2098 4584 w
(scene) 2293 4584 w
(and) 2610 4584 w
(sends) 2831 4584 w
(each) 3155 4584 w
10 /LucidaTypewriter f
(Entity) 3420 4584 w
10 /LucidaSansUnicode00 f
(individually) 3893 4584 w
(to) 4488 4584 w
(the) 4627 4584 w
(enti\255) 4823 4584 w
(typroc.) 970 4704 w
(The) 970 4860 w
10 /LucidaSans-Demi f
(entityproc) 1198 4860 w
10 /LucidaSansUnicode00 f
(receives) 1771 4860 w
(an) 2210 4860 w
(entity) 2374 4860 w
(and) 2694 4860 w
(splits) 2921 4860 w
(its) 3228 4860 w
(geometry) 3393 4860 w
(equitatively) 3899 4860 w
(among) 4504 4860 w
(the) 4885 4860 w
(tilers, sending a batch for each of them to process.) 970 4980 w
(Next,) 970 5136 w
(each) 1293 5136 w
10 /LucidaSans-Demi f
(tiler) 1580 5136 w
10 /LucidaSansUnicode00 f
(gets) 1854 5136 w
(to) 2123 5136 w
(work) 2284 5136 w
(on) 2584 5136 w
(their) 2770 5136 w
(subset) 3058 5136 w
(of) 3441 5136 w
(the) 3602 5136 w
(geometry) 3820 5136 w
(\(potentially) 4342 5136 w
(in) 4949 5136 w
(parallel\)) 970 5256 w
10 /LucidaSansUnicode20 f
(\024) 1360 5256 w
10 /LucidaSansUnicode00 f
(see) 1460 5256 w
10 /LucidaSans-Demi f
(Figure) 1675 5256 w
(2) 2053 5256 w
10 /LucidaSansUnicode00 f
(.) 2117 5256 w
(They) 2233 5256 w
(walk) 2518 5256 w
(the) 2789 5256 w
(list) 2996 5256 w
(of) 3194 5256 w
(primitives,) 3344 5256 w
(then) 3908 5256 w
(for) 4177 5256 w
(each) 4368 5256 w
(of) 4643 5256 w
(them) 4792 5256 w
(apply) 970 5376 w
(the) 1281 5376 w
10 /LucidaSans-Demi f
(vertex) 1485 5376 w
(shader) 1856 5376 w
10 /LucidaSansUnicode00 f
(to) 2257 5376 w
(its) 2405 5376 w
(vertices) 2572 5376 w
(\(which) 2995 5376 w
(expects) 3359 5376 w
(clip) 3784 5376 w
(space) 4006 5376 w
(coordinates) 4332 5376 w
(in) 4949 5376 w
(return\),) 970 5496 w
(perform) 1378 5496 w
(frustum) 1813 5496 w
(culling) 2239 5496 w
(and) 2606 5496 w
(clipping,) 2829 5496 w
(back-face) 3292 5496 w
(culling,) 3819 5496 w
(and) 4218 5496 w
(then) 4441 5496 w
(project) 4701 5496 w
(them) 970 5616 w
(into) 1258 5616 w
(the) 1487 5616 w
(viewport) 1682 5616 w
(\(screen) 2138 5616 w
(space\).) 2528 5616 w
(Following) 2941 5616 w
(this) 3445 5616 w
(step,) 3665 5616 w
(they) 3945 5616 w
(build) 4193 5616 w
(a) 4480 5616 w
(bounding) 4576 5616 w
(box,) 970 5736 w
(used) 1220 5736 w
(to) 1485 5736 w
(allocate) 1616 5736 w
(each) 2022 5736 w
(primitive) 2279 5736 w
(into a rasterization bucket, or) 2741 5736 w
10 /LucidaSans-Demi f
(tile) 4217 5736 w
10 /LucidaSansUnicode00 f
(, managed by) 4383 5736 w
(one of the rasterizers; this is illustrated) 970 5856 w
(in) 2922 5856 w
10 /LucidaSans-Demi f
(Figure) 3046 5856 w
(3) 3405 5856 w
10 /LucidaSansUnicode00 f
(.) 3469 5856 w
(If) 3566 5856 w
(it) 3665 5856 w
(spans) 3764 5856 w
(multiple) 4079 5856 w
(tiles,) 4510 5856 w
(it) 4777 5856 w
(will) 4876 5856 w
(be copied and sent to each of them.) 970 5976 w
(Finally,) 970 6132 w
(the) 1346 6132 w
10 /LucidaSans-Demi f
(rasterizers) 1535 6132 w
10 /LucidaSansUnicode00 f
(receive) 2128 6132 w
(the) 2503 6132 w
(primitive) 2692 6132 w
(in) 3155 6132 w
(screen) 3280 6132 w
(space,) 3631 6132 w
(slice) 3974 6132 w
(it) 4225 6132 w
(to) 4326 6132 w
(fit) 4459 6132 w
(their) 4597 6132 w
(tile,) 4857 6132 w
(and) 970 6252 w
(apply) 1187 6252 w
(a) 1486 6252 w
(rasterization) 1578 6252 w
(routine) 2226 6252 w
(based) 2611 6252 w
(on) 2936 6252 w
(its) 3096 6252 w
(type) 3250 6252 w
(\(only) 3495 6252 w
10 /LucidaSans-Italic f
(points) 3769 6252 w
10 /LucidaSansUnicode00 f
(,) 4065 6252 w
10 /LucidaSans-Italic f
(lines) 4134 6252 w
10 /LucidaSansUnicode00 f
(and) 4393 6252 w
10 /LucidaSans-Italic f
(triangles) 4610 6252 w
10 /LucidaSansUnicode00 f
(are) 970 6372 w
(supported\).) 1160 6372 w
(For) 1760 6372 w
(each) 1954 6372 w
(of) 2216 6372 w
(the) 2352 6372 w
(pixels,) 2545 6372 w
(a) 2904 6372 w
10 /LucidaSans-Demi f
(depth) 2997 6372 w
(test) 3333 6372 w
10 /LucidaSansUnicode00 f
(is) 3569 6372 w
(performed,) 3687 6372 w
(discarding) 4268 6372 w
(frag\255) 4812 6372 w
(ments) 970 6492 w
(that) 1319 6492 w
(are) 1560 6492 w
(further) 1762 6492 w
(away.) 2148 6492 w
(Then) 2469 6492 w
(a) 2762 6492 w
10 /LucidaSans-Demi f
(fragment) 2867 6492 w
(shader) 3391 6492 w
10 /LucidaSansUnicode00 f
(is) 3793 6492 w
(applied) 3923 6492 w
(and) 4331 6492 w
(the) 4560 6492 w
(result) 4764 6492 w
(written to the framebuffer.) 970 6612 w
(July 22, 2024) 2556 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
1026 1992 1026 1632 Dl
1026 1632 1566 1632 Dl
1566 1632 1566 1992 Dl
1566 1992 1026 1992 Dl
7 /LucidaSansUnicode00 f
(Renderjob) 1123 1826 w
1566 1812 1926 1812 Dl
1854 1830 1926 1812 Dl
1853 1825 1925 1812 Dl
1852 1821 1925 1812 Dl
1851 1816 1925 1812 Dl
1851 1812 1925 1812 Dl
1851 1807 1925 1811 Dl
1852 1802 1925 1811 Dl
1853 1798 1925 1811 Dl
1854 1794 1926 1812 Dl
1926 1812 432 432 De
(renderer) 1997 1826 w
2358 1812 2718 1812 Dl
2646 1830 2718 1812 Dl
2645 1825 2717 1812 Dl
2644 1821 2717 1812 Dl
2643 1816 2717 1812 Dl
2643 1812 2717 1812 Dl
2643 1807 2717 1811 Dl
2644 1802 2717 1811 Dl
2645 1798 2717 1811 Dl
2646 1794 2718 1812 Dl
2718 1812 432 432 De
(entityproc) 2763 1826 w
3510 1056 432 432 De
(tiler) 3626 1070 w
(1) 3782 1070 w
3510 1560 432 432 De
(tiler) 3626 1574 w
(2) 3782 1574 w
3510 2064 432 432 De
7 /LucidaSansUnicode20 f
(&) 3691 2078 w
3510 2568 432 432 De
7 /LucidaSansUnicode00 f
(tiler) 3627 2582 w
(n) 3783 2582 w
4302 1056 432 432 De
(rasterizer) 4322 1070 w
(1) 4670 1070 w
4302 1560 432 432 De
(rasterizer) 4322 1574 w
(2) 4670 1574 w
4302 2064 432 432 De
7 /LucidaSansUnicode20 f
(&) 4483 2078 w
4302 2568 432 432 De
7 /LucidaSansUnicode00 f
(rasterizer) 4323 2582 w
(n) 4671 2582 w
3090 1662 3569 1205 Dl
3530 1267 3569 1205 Dl
3526 1265 3569 1205 Dl
3522 1262 3568 1205 Dl
3519 1259 3569 1205 Dl
3515 1256 3569 1205 Dl
3512 1253 3568 1206 Dl
3510 1249 3569 1205 Dl
3507 1245 3568 1205 Dl
3504 1241 3568 1205 Dl
3139 1746 3519 1626 Dl
3456 1664 3519 1626 Dl
3454 1660 3519 1625 Dl
3452 1656 3519 1626 Dl
3450 1652 3519 1626 Dl
3449 1647 3519 1625 Dl
3448 1643 3520 1625 Dl
3447 1639 3519 1626 Dl
3446 1634 3519 1625 Dl
3445 1629 3519 1625 Dl
3139 1877 3519 1997 Dl
3445 1994 3519 1998 Dl
3446 1989 3519 1998 Dl
3447 1984 3519 1997 Dl
3448 1980 3520 1998 Dl
3449 1976 3519 1998 Dl
3450 1971 3519 1997 Dl
3452 1967 3519 1997 Dl
3454 1963 3519 1998 Dl
3456 1959 3519 1997 Dl
3090 1961 3569 2418 Dl
3504 2382 3568 2418 Dl
3507 2378 3568 2418 Dl
3510 2374 3569 2418 Dl
3512 2370 3568 2417 Dl
3515 2367 3569 2418 Dl
3519 2364 3569 2418 Dl
3522 2361 3568 2418 Dl
3526 2358 3569 2418 Dl
3530 2356 3569 2418 Dl
3942 1056 4302 1056 Dl
4230 1074 4302 1056 Dl
4229 1069 4301 1056 Dl
4228 1065 4301 1056 Dl
4227 1060 4301 1056 Dl
4227 1056 4301 1056 Dl
4227 1051 4301 1055 Dl
4228 1046 4301 1055 Dl
4229 1042 4301 1055 Dl
4230 1038 4302 1056 Dl
3908 1171 4335 1443 Dl
4265 1420 4335 1443 Dl
4266 1416 4335 1444 Dl
4268 1412 4334 1443 Dl
4271 1408 4335 1444 Dl
4273 1404 4335 1443 Dl
4275 1400 4334 1443 Dl
4278 1396 4335 1443 Dl
4281 1393 4335 1443 Dl
4284 1390 4335 1444 Dl
3859 1225 4383 1893 Dl
4325 1848 4383 1893 Dl
4328 1845 4383 1893 Dl
4332 1841 4384 1893 Dl
4335 1838 4384 1893 Dl
4338 1835 4384 1893 Dl
4342 1832 4384 1893 Dl
4345 1830 4383 1893 Dl
4350 1828 4384 1893 Dl
4354 1826 4384 1893 Dl
3826 1247 4417 2376 Dl
4368 2321 4417 2376 Dl
4371 2318 4417 2376 Dl
4375 2315 4417 2376 Dl
4379 2313 4417 2376 Dl
4383 2310 4417 2375 Dl
4387 2308 4417 2375 Dl
4391 2307 4416 2376 Dl
4395 2305 4416 2376 Dl
4400 2304 4417 2376 Dl
3908 1444 4335 1172 Dl
4284 1225 4335 1171 Dl
4281 1222 4335 1172 Dl
4278 1219 4335 1172 Dl
4275 1215 4334 1172 Dl
4273 1211 4335 1172 Dl
4271 1207 4335 1171 Dl
4268 1203 4334 1172 Dl
4266 1200 4335 1172 Dl
4265 1195 4335 1172 Dl
3942 1560 4302 1560 Dl
4230 1578 4302 1560 Dl
4229 1573 4301 1560 Dl
4228 1569 4301 1560 Dl
4227 1564 4301 1560 Dl
4227 1560 4301 1560 Dl
4227 1555 4301 1559 Dl
4228 1550 4301 1559 Dl
4229 1546 4301 1559 Dl
4230 1542 4302 1560 Dl
3908 1675 4335 1947 Dl
4265 1924 4335 1947 Dl
4266 1920 4335 1948 Dl
4268 1916 4334 1947 Dl
4271 1912 4335 1948 Dl
4273 1908 4335 1947 Dl
4275 1904 4334 1947 Dl
4278 1900 4335 1947 Dl
4281 1897 4335 1947 Dl
4284 1894 4335 1948 Dl
3859 1729 4383 2397 Dl
4325 2352 4383 2397 Dl
4328 2349 4383 2397 Dl
4332 2345 4384 2397 Dl
4335 2342 4384 2397 Dl
4338 2339 4384 2397 Dl
4342 2336 4384 2397 Dl
4345 2334 4383 2397 Dl
4350 2332 4384 2397 Dl
4354 2330 4384 2397 Dl
10 /LucidaSans-Demi f
(Figure 1) 970 2982 w
10 /LucidaSansUnicode00 f
(: The rendering graph for a) 1392 2982 w
10 /LucidaSans-Demi f
(2n) 2746 2982 w
10 /LucidaSansUnicode00 f
(processor machine.) 2908 2982 w
10 /LucidaSans-Demi f
(Tile-based rendering) 720 3222 w
2070 4248 2106 4248 Dl
2142 4248 2178 4248 Dl
2214 4248 2250 4248 Dl
2286 4248 2322 4248 Dl
2358 4248 2394 4248 Dl
2430 4248 2466 4248 Dl
2502 4248 2538 4248 Dl
2574 4248 2610 4248 Dl
2646 4248 2682 4248 Dl
2718 4248 2754 4248 Dl
2790 4248 2826 4248 Dl
2862 4248 2898 4248 Dl
2934 4248 2970 4248 Dl
2970 4248 2970 4212 Dl
2970 4194 2970 4158 Dl
2970 4140 2970 4104 Dl
2970 4104 2934 4104 Dl
2898 4104 2862 4104 Dl
2826 4104 2790 4104 Dl
2754 4104 2718 4104 Dl
2682 4104 2646 4104 Dl
2610 4104 2574 4104 Dl
2538 4104 2502 4104 Dl
2466 4104 2430 4104 Dl
2394 4104 2358 4104 Dl
2322 4104 2286 4104 Dl
2250 4104 2214 4104 Dl
2178 4104 2142 4104 Dl
2106 4104 2070 4104 Dl
2070 4104 2070 4140 Dl
2070 4158 2070 4194 Dl
2070 4212 2070 4248 Dl
7 /LucidaSansUnicode00 f
(tile 1) 2435 4190 w
2070 4392 2106 4392 Dl
2142 4392 2178 4392 Dl
2214 4392 2250 4392 Dl
2286 4392 2322 4392 Dl
2358 4392 2394 4392 Dl
2430 4392 2466 4392 Dl
2502 4392 2538 4392 Dl
2574 4392 2610 4392 Dl
2646 4392 2682 4392 Dl
2718 4392 2754 4392 Dl
2790 4392 2826 4392 Dl
2862 4392 2898 4392 Dl
2934 4392 2970 4392 Dl
2970 4392 2970 4356 Dl
2970 4338 2970 4302 Dl
2970 4284 2970 4248 Dl
2970 4248 2934 4248 Dl
2898 4248 2862 4248 Dl
2826 4248 2790 4248 Dl
2754 4248 2718 4248 Dl
2682 4248 2646 4248 Dl
2610 4248 2574 4248 Dl
2538 4248 2502 4248 Dl
2466 4248 2430 4248 Dl
2394 4248 2358 4248 Dl
2322 4248 2286 4248 Dl
2250 4248 2214 4248 Dl
2178 4248 2142 4248 Dl
2106 4248 2070 4248 Dl
2070 4248 2070 4284 Dl
2070 4302 2070 4338 Dl
2070 4356 2070 4392 Dl
(tile 2) 2435 4334 w
2070 4536 2106 4536 Dl
2142 4536 2178 4536 Dl
2214 4536 2250 4536 Dl
2286 4536 2322 4536 Dl
2358 4536 2394 4536 Dl
2430 4536 2466 4536 Dl
2502 4536 2538 4536 Dl
2574 4536 2610 4536 Dl
2646 4536 2682 4536 Dl
2718 4536 2754 4536 Dl
2790 4536 2826 4536 Dl
2862 4536 2898 4536 Dl
2934 4536 2970 4536 Dl
2970 4536 2970 4500 Dl
2970 4482 2970 4446 Dl
2970 4428 2970 4392 Dl
2970 4392 2934 4392 Dl
2898 4392 2862 4392 Dl
2826 4392 2790 4392 Dl
2754 4392 2718 4392 Dl
2682 4392 2646 4392 Dl
2610 4392 2574 4392 Dl
2538 4392 2502 4392 Dl
2466 4392 2430 4392 Dl
2394 4392 2358 4392 Dl
2322 4392 2286 4392 Dl
2250 4392 2214 4392 Dl
2178 4392 2142 4392 Dl
2106 4392 2070 4392 Dl
2070 4392 2070 4428 Dl
2070 4446 2070 4482 Dl
2070 4500 2070 4536 Dl
7 /LucidaSansUnicode20 f
(&) 2485 4478 w
2070 4680 2106 4680 Dl
2142 4680 2178 4680 Dl
2214 4680 2250 4680 Dl
2286 4680 2322 4680 Dl
2358 4680 2394 4680 Dl
2430 4680 2466 4680 Dl
2502 4680 2538 4680 Dl
2574 4680 2610 4680 Dl
2646 4680 2682 4680 Dl
2718 4680 2754 4680 Dl
2790 4680 2826 4680 Dl
2862 4680 2898 4680 Dl
2934 4680 2970 4680 Dl
2970 4680 2970 4644 Dl
2970 4626 2970 4590 Dl
2970 4572 2970 4536 Dl
2970 4536 2934 4536 Dl
2898 4536 2862 4536 Dl
2826 4536 2790 4536 Dl
2754 4536 2718 4536 Dl
2682 4536 2646 4536 Dl
2610 4536 2574 4536 Dl
2538 4536 2502 4536 Dl
2466 4536 2430 4536 Dl
2394 4536 2358 4536 Dl
2322 4536 2286 4536 Dl
2250 4536 2214 4536 Dl
2178 4536 2142 4536 Dl
2106 4536 2070 4536 Dl
2070 4536 2070 4572 Dl
2070 4590 2070 4626 Dl
2070 4644 2070 4680 Dl
7 /LucidaSansUnicode00 f
(tile n) 2435 4622 w
2034 4716 2034 4068 Dl
2034 4068 3006 4068 Dl
3006 4068 3006 4716 Dl
3006 4716 2034 4716 Dl
(Screen) 1774 4118 w
3330 3636 432 432 De
(rasterizer) 3350 3650 w
(1) 3698 3650 w
3330 4140 432 432 De
(rasterizer) 3350 4154 w
(2) 3698 4154 w
3330 4644 432 432 De
7 /LucidaSansUnicode20 f
(&) 3511 4658 w
3330 5148 432 432 De
7 /LucidaSansUnicode00 f
(rasterizer) 3351 5162 w
(n) 3699 5162 w
2970 4176 3330 3636 Dl
2970 4320 3330 4140 Dl
2970 4464 3330 4644 Dl
2970 4608 3330 5148 Dl
10 /LucidaSans-Demi f
(Figure 2) 720 5562 w
10 /LucidaSansUnicode00 f
(: Per tile rasterizers.) 1142 5562 w
(July 22, 2024) 2556 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
2070 1668 2106 1668 Dl
2142 1668 2178 1668 Dl
2214 1668 2250 1668 Dl
2286 1668 2322 1668 Dl
2358 1668 2394 1668 Dl
2430 1668 2466 1668 Dl
2502 1668 2538 1668 Dl
2574 1668 2610 1668 Dl
2646 1668 2682 1668 Dl
2718 1668 2754 1668 Dl
2790 1668 2826 1668 Dl
2862 1668 2898 1668 Dl
2934 1668 2970 1668 Dl
2970 1668 2970 1632 Dl
2970 1614 2970 1578 Dl
2970 1560 2970 1524 Dl
2970 1524 2934 1524 Dl
2898 1524 2862 1524 Dl
2826 1524 2790 1524 Dl
2754 1524 2718 1524 Dl
2682 1524 2646 1524 Dl
2610 1524 2574 1524 Dl
2538 1524 2502 1524 Dl
2466 1524 2430 1524 Dl
2394 1524 2358 1524 Dl
2322 1524 2286 1524 Dl
2250 1524 2214 1524 Dl
2178 1524 2142 1524 Dl
2106 1524 2070 1524 Dl
2070 1524 2070 1560 Dl
2070 1578 2070 1614 Dl
2070 1632 2070 1668 Dl
7 /LucidaSansUnicode00 f
(1) 2498 1610 w
2070 1812 2106 1812 Dl
2142 1812 2178 1812 Dl
2214 1812 2250 1812 Dl
2286 1812 2322 1812 Dl
2358 1812 2394 1812 Dl
2430 1812 2466 1812 Dl
2502 1812 2538 1812 Dl
2574 1812 2610 1812 Dl
2646 1812 2682 1812 Dl
2718 1812 2754 1812 Dl
2790 1812 2826 1812 Dl
2862 1812 2898 1812 Dl
2934 1812 2970 1812 Dl
2970 1812 2970 1776 Dl
2970 1758 2970 1722 Dl
2970 1704 2970 1668 Dl
2970 1668 2934 1668 Dl
2898 1668 2862 1668 Dl
2826 1668 2790 1668 Dl
2754 1668 2718 1668 Dl
2682 1668 2646 1668 Dl
2610 1668 2574 1668 Dl
2538 1668 2502 1668 Dl
2466 1668 2430 1668 Dl
2394 1668 2358 1668 Dl
2322 1668 2286 1668 Dl
2250 1668 2214 1668 Dl
2178 1668 2142 1668 Dl
2106 1668 2070 1668 Dl
2070 1668 2070 1704 Dl
2070 1722 2070 1758 Dl
2070 1776 2070 1812 Dl
(2) 2498 1754 w
2070 1956 2106 1956 Dl
2142 1956 2178 1956 Dl
2214 1956 2250 1956 Dl
2286 1956 2322 1956 Dl
2358 1956 2394 1956 Dl
2430 1956 2466 1956 Dl
2502 1956 2538 1956 Dl
2574 1956 2610 1956 Dl
2646 1956 2682 1956 Dl
2718 1956 2754 1956 Dl
2790 1956 2826 1956 Dl
2862 1956 2898 1956 Dl
2934 1956 2970 1956 Dl
2970 1956 2970 1920 Dl
2970 1902 2970 1866 Dl
2970 1848 2970 1812 Dl
2970 1812 2934 1812 Dl
2898 1812 2862 1812 Dl
2826 1812 2790 1812 Dl
2754 1812 2718 1812 Dl
2682 1812 2646 1812 Dl
2610 1812 2574 1812 Dl
2538 1812 2502 1812 Dl
2466 1812 2430 1812 Dl
2394 1812 2358 1812 Dl
2322 1812 2286 1812 Dl
2250 1812 2214 1812 Dl
2178 1812 2142 1812 Dl
2106 1812 2070 1812 Dl
2070 1812 2070 1848 Dl
2070 1866 2070 1902 Dl
2070 1920 2070 1956 Dl
7 /LucidaSansUnicode20 f
(&) 2485 1898 w
2070 2100 2106 2100 Dl
2142 2100 2178 2100 Dl
2214 2100 2250 2100 Dl
2286 2100 2322 2100 Dl
2358 2100 2394 2100 Dl
2430 2100 2466 2100 Dl
2502 2100 2538 2100 Dl
2574 2100 2610 2100 Dl
2646 2100 2682 2100 Dl
2718 2100 2754 2100 Dl
2790 2100 2826 2100 Dl
2862 2100 2898 2100 Dl
2934 2100 2970 2100 Dl
2970 2100 2970 2064 Dl
2970 2046 2970 2010 Dl
2970 1992 2970 1956 Dl
2970 1956 2934 1956 Dl
2898 1956 2862 1956 Dl
2826 1956 2790 1956 Dl
2754 1956 2718 1956 Dl
2682 1956 2646 1956 Dl
2610 1956 2574 1956 Dl
2538 1956 2502 1956 Dl
2466 1956 2430 1956 Dl
2394 1956 2358 1956 Dl
2322 1956 2286 1956 Dl
2250 1956 2214 1956 Dl
2178 1956 2142 1956 Dl
2106 1956 2070 1956 Dl
2070 1956 2070 1992 Dl
2070 2010 2070 2046 Dl
2070 2064 2070 2100 Dl
7 /LucidaSansUnicode00 f
(n) 2499 2042 w
2142 1848 2592 1704 Dl
2592 1704 2754 2028 Dl
2754 2028 2142 1848 Dl
2034 2136 2034 1488 Dl
2034 1488 3006 1488 Dl
3006 1488 3006 2136 Dl
3006 2136 2034 2136 Dl
(Screen) 1774 1538 w
3330 1056 432 432 De
(rasterizer) 3350 1070 w
(1) 3698 1070 w
3330 1560 432 432 De
(rasterizer) 3350 1574 w
(2) 3698 1574 w
3330 2064 432 432 De
7 /LucidaSansUnicode20 f
(&) 3511 2078 w
3330 2568 432 432 De
7 /LucidaSansUnicode00 f
(rasterizer) 3351 2582 w
(n) 3699 2582 w
2970 1740 3330 1560 Dl
3273 1608 3329 1560 Dl
3270 1604 3329 1560 Dl
3268 1601 3329 1560 Dl
3265 1597 3329 1560 Dl
3263 1593 3329 1560 Dl
3261 1588 3329 1560 Dl
3260 1584 3329 1560 Dl
3258 1580 3329 1560 Dl
3257 1575 3329 1560 Dl
2970 1884 3330 2064 Dl
3257 2048 3329 2063 Dl
3258 2043 3329 2063 Dl
3260 2039 3329 2063 Dl
3261 2035 3329 2063 Dl
3263 2030 3329 2063 Dl
3265 2026 3329 2063 Dl
3268 2022 3329 2063 Dl
3270 2019 3329 2063 Dl
3273 2015 3329 2063 Dl
2970 2028 3330 2568 Dl
3275 2518 3329 2567 Dl
3278 2514 3329 2567 Dl
3281 2511 3329 2567 Dl
3285 2508 3329 2567 Dl
3288 2506 3329 2567 Dl
3292 2503 3329 2567 Dl
3296 2501 3329 2567 Dl
3300 2499 3329 2567 Dl
3304 2498 3329 2567 Dl
10 /LucidaSans-Demi f
(Figure 3) 720 2982 w
10 /LucidaSansUnicode00 f
(: Raster task scheduling.) 1142 2982 w
10 /LucidaSans-Demi f
(The scene) 720 3222 w
2196 3564 2196 3420 Dl
2196 3420 2556 3420 Dl
2556 3420 2556 3564 Dl
2556 3564 2196 3564 Dl
7 /LucidaSansUnicode00 f
(Scene) 2279 3506 w
2376 3564 2376 3708 Dl
2376 3708 2448 3708 Dl
2448 3780 2448 3636 Dl
2448 3636 2808 3636 Dl
2808 3636 2808 3780 Dl
2808 3780 2448 3780 Dl
(Entity) 2534 3722 w
2628 3780 2628 3924 Dl
2628 3924 2700 3924 Dl
2700 3996 2700 3852 Dl
2700 3852 3060 3852 Dl
3060 3852 3060 3996 Dl
3060 3996 2700 3996 Dl
(Model) 2777 3938 w
2880 3996 2880 4140 Dl
2880 4140 2952 4140 Dl
2952 4212 2952 4068 Dl
2952 4068 3312 4068 Dl
3312 4068 3312 4212 Dl
3312 4212 2952 4212 Dl
(Mesh) 3043 4154 w
3132 4212 3132 4356 Dl
3132 4356 3204 4356 Dl
3204 4428 3204 4284 Dl
3204 4284 3564 4284 Dl
3564 4284 3564 4428 Dl
3564 4428 3204 4428 Dl
(Primitive) 3237 4370 w
3132 4356 3132 4500 Dl
3132 4500 3132 4644 Dl
3132 4644 3204 4644 Dl
3204 4716 3204 4572 Dl
3204 4572 3564 4572 Dl
3564 4572 3564 4716 Dl
3564 4716 3204 4716 Dl
(Material) 3248 4658 w
10 /LucidaSans-Demi f
(Frames of reference) 720 5034 w
10 /LucidaSansUnicode00 f
(Frames are right-handed throughout every stage.) 970 5190 w
gsave
newpath
3586 5856 m
/inpath true def
 0.7 setgray
2790 6072 14 14 De
 gsave eofill grestore 0 setgray stroke
grestore
/inpath false def
7 /LucidaSansUnicode00 f
(p) 2703 6086 w
2797 6072 3514 6134 Dl
3441 6146 3514 6135 Dl
3441 6141 3515 6134 Dl
3440 6137 3514 6135 Dl
3440 6132 3514 6134 Dl
3441 6128 3515 6134 Dl
3441 6123 3514 6133 Dl
3441 6119 3513 6134 Dl
3443 6115 3514 6135 Dl
3444 6110 3513 6134 Dl
(bx) 3543 6148 w
2797 6072 2797 5352 Dl
2815 5424 2797 5352 Dl
2811 5424 2798 5352 Dl
2806 5425 2797 5352 Dl
2801 5426 2797 5352 Dl
2797 5426 2797 5352 Dl
2793 5426 2797 5352 Dl
2788 5425 2797 5352 Dl
2783 5424 2796 5352 Dl
2779 5424 2797 5352 Dl
(by) 2685 5366 w
2797 6072 2246 6360 Dl
2301 6311 2246 6359 Dl
2304 6313 2246 6359 Dl
2307 6317 2246 6359 Dl
2309 6321 2246 6359 Dl
2311 6325 2246 6359 Dl
2313 6329 2246 6359 Dl
2315 6334 2246 6359 Dl
2317 6338 2246 6359 Dl
2318 6342 2246 6359 Dl
(bz) 2132 6374 w
10 /LucidaSans-Demi f
(Figure 4) 720 6558 w
10 /LucidaSansUnicode00 f
(: Example right-handed rframe.) 1142 6558 w
10 /LucidaSans-Demi f
(Viewports) 720 6798 w
10 /LucidaSansUnicode00 f
(July 22, 2024) 2556 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
1836 2352 1836 912 Dl
1836 912 3996 912 Dl
3996 912 3996 2352 Dl
3996 2352 1836 2352 Dl
7 /LucidaSansUnicode00 f
(framebuffer) 2714 2222 w
gsave
newpath
2916 2208 m
/inpath true def
 0.7 setgray
1828 912 14 14 De
 gsave eofill grestore 0 setgray stroke
grestore
/inpath false def
(p) 1742 926 w
1836 912 2556 912 Dl
2484 930 2556 912 Dl
2483 925 2555 912 Dl
2482 921 2555 912 Dl
2481 916 2555 912 Dl
2481 912 2555 912 Dl
2481 907 2555 911 Dl
2482 902 2555 911 Dl
2483 898 2555 911 Dl
2484 894 2556 912 Dl
(bx) 2513 854 w
1836 912 1836 1632 Dl
1818 1560 1836 1632 Dl
1822 1559 1835 1631 Dl
1826 1558 1835 1631 Dl
1831 1557 1835 1631 Dl
1836 1557 1836 1631 Dl
1840 1557 1836 1631 Dl
1845 1558 1836 1631 Dl
1849 1559 1836 1631 Dl
1854 1560 1836 1632 Dl
(by) 1724 1646 w
10 /LucidaSans-Demi f
(Figure 5) 720 2550 w
10 /LucidaSansUnicode00 f
(: Illustration of a 3:2 viewport.) 1142 2550 w
(July 22, 2024) 2556 7680 w
cleartomark
showpage
saveobj restore
%%EndPage: 4 4
%%Trailer
done
%%DocumentFonts: LucidaSansUnicode20 LucidaSansUnicode00 LucidaSans-Demi LucidaSans-Italic LucidaTypewriter
%%Pages: 4