From c40a1238f24534b5f433308d92308e1481464141 Mon Sep 17 00:00:00 2001 From: rodri Date: Wed, 24 Apr 2024 12:36:41 +0000 Subject: doc: add some schematics about the overall architecture. --- doc/libgraphics.ms | 175 ++++++++++++--- doc/libgraphics.pdf | Bin 15087 -> 19045 bytes doc/libgraphics.ps | 597 +++++++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 715 insertions(+), 57 deletions(-) diff --git a/doc/libgraphics.ms b/doc/libgraphics.ms index 87a23a7..31a44af 100644 --- a/doc/libgraphics.ms +++ b/doc/libgraphics.ms @@ -2,33 +2,152 @@ libgraphics .AU Rodrigo G. López -.sp rgl@antares-labs.eu -.AI -Antares Telecom Laboratories -Albatera, Alicante -.FS -ACHTUNG! this is a -.B "WORK IN PROGRESS" -.FE -.NH 1 -Data Structures -.NH 2 -Camera -.P1 -struct Camera { - RFrame3; /* VCS */ - Image *viewport; - double fov; /* vertical FOV */ - struct { - double n, f; /* near and far clipping planes */ - } clip; - Projection ptype; - Matrix3 proj; /* VCS to viewport xform */ -}; -.P2 +.AB +To be determined. +.AE +.SH +Rendering graph .PP -A camera is an image capturing entity, analog to the real world device -we all know, that allows us to see the virtual 3-D world by projecting -it into a viewport we can attach to a screen or window for real-time -visualization or write out into a file. +.PS +.ps 7 +circlerad = 0.3 +moveht = 0.1 +box "Renderjob" +arrow +R: circle "renderer" +arrow +E: circle "entityproc" +move +Tiler: [ + down + T0: circle "tiler 0" + move + T1: circle "tiler 1" + move + Td: circle "…" + move + Tn: circle "tiler n" +] +move +Raster: [ + down + R0: circle "rasterizer 0" + move + R1: circle "rasterizer 1" + move + Rd: circle "…" + move + Rn: circle "rasterizer n" +] +arrow from E to Tiler.T0 chop +arrow from E to Tiler.T1 chop +arrow from E to Tiler.Td chop +arrow from E to Tiler.Tn chop +arrow from Tiler.T0 to Raster.R0 chop +arrow from Tiler.T0 to Raster.R1 chop +arrow from Tiler.T0 to Raster.Rd chop +arrow from Tiler.T0 to Raster.Rn chop +arrow from Tiler.T1 to Raster.R0 chop +arrow from Tiler.T1 to Raster.R1 chop +arrow from Tiler.T1 to Raster.Rd chop +arrow from Tiler.T1 to Raster.Rn chop +.ps 10 +.PE +.B "Figure 1" : +For a +.B 2(n+1) +processor machine. +.SH +The scene +.PP +.PS +.ps 7 +boxwid = 0.5 +boxht = 0.2 +linewid = 0.1 +lineht = 0.2 +box "Scene" +down; line from last box.s; right; line +box "Entity" +down; line from last box.s; right; line +box "Model" +down; line from last box.s; right; line +box "Mesh" +down; line from last box.s; right; line +box "Primitive" +down +line from 2nd last line.s; line; right; line +box "Material" +.ps 10 +.PE +.SH +Tile-based rendering +.PP +.PS +.ps 7 +Tiles: [ + boxht = 0.2 + boxwid = 1.25 + down + T0: box dashed "tile 0" + T1: box dashed "tile 1" + Td: box dashed "…" + Tn: box dashed "tile n" +] +box ht last [].ht+0.1 wid last [].wid+0.1 at last [] +"Screen" rjust with .se at last [].nw - (0.1,0) +Raster: [ + moveht = 0.1 + down + R0: circle "rasterizer 0" + move + R1: circle "rasterizer 1" + move + Rd: circle "…" + move + Rn: circle "rasterizer n" +] with .w at Tiles.e + (0.5,0) +line from Tiles.T0.e to Raster.R0.w +line from Tiles.T1.e to Raster.R1.w +line from Tiles.Td.e to Raster.Rd.w +line from Tiles.Tn.e to Raster.Rn.w +.ps 10 +.PE +.B "Figure 2" : +Per tile rasterizers. +.PS +.ps 7 +Tiles: [ + boxht = 0.2 + boxwid = 1.25 + down + T0: box dashed "0" + T1: box dashed "1" + Td: box dashed "…" + Tn: box dashed "n" +] +line from last [].w + (0.1,-0.05) to last [].n - (-0.1,0.25) +line to last [].se - (0.3,-0.1) +line to 1st line +box ht last [].ht+0.1 wid last [].wid+0.1 at last [] +"Screen" rjust with .se at last [].nw - (0.1,0) +Raster: [ + moveht = 0.1 + down + R0: circle "rasterizer 0" + move + R1: circle "rasterizer 1" + move + Rd: circle "…" + move + Rn: circle "rasterizer n" +] with .w at Tiles.e + (0.5,0) +arrow dashed from Tiles.T0.e to Raster.R0.w +arrow from Tiles.T1.e to Raster.R1.w +arrow from Tiles.Td.e to Raster.Rd.w +arrow from Tiles.Tn.e to Raster.Rn.w +.ps 10 +.PE +.B "Figure 3" : +Raster task scheduling. diff --git a/doc/libgraphics.pdf b/doc/libgraphics.pdf index 0291710..775d825 100644 Binary files a/doc/libgraphics.pdf and b/doc/libgraphics.pdf differ diff --git a/doc/libgraphics.ps b/doc/libgraphics.ps index 1a566f7..081c5d0 100644 --- a/doc/libgraphics.ps +++ b/doc/libgraphics.ps @@ -191,7 +191,7 @@ /braceleftbt [203 490] /bracketrightex [220 -125 500 0] /radical [0 0 550 0] - /radicalex [-50 0 500 0] + /radicalex [-50 0 500 1] /parenleftex [-20 -170 0 0] /integral [100 -50 500 0] /infinity [10 -75 730 0] @@ -202,6 +202,82 @@ /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. @@ -543,41 +619,504 @@ setup mark 1 pagesetup 12 /LucidaSans-Demi f -(libgraphics) 2533 1220 w +(libgraphics) 2533 1230 w 10 /LucidaSans-Italic f -(Rodrigo G. L\363pez) 2469 1480 w -(rgl@antares-labs.eu) 2377 1760 w +(Rodrigo G. L\363pez) 2469 1470 w +(rgl@antares-labs.eu) 2377 1590 w +(ABSTRACT) 2626 2030 w +10 /LucidaSansUnicode00 f +(To be determined.) 1330 2290 w +10 /LucidaSans-Demi f +(Rendering graph) 720 2650 w +1026 4000 1026 3640 Dl +1026 3640 1566 3640 Dl +1566 3640 1566 4000 Dl +1566 4000 1026 4000 Dl +7 /LucidaSansUnicode00 f +(Renderjob) 1123 3834 w +1566 3820 1926 3820 Dl +1854 3838 1926 3820 Dl +1854 3802 1926 3820 Dl +1926 3820 432 432 De +(renderer) 1997 3834 w +2358 3820 2718 3820 Dl +2646 3838 2718 3820 Dl +2646 3802 2718 3820 Dl +2718 3820 432 432 De +(entityproc) 2763 3834 w +3510 3064 432 432 De +(tiler) 3626 3078 w +(0) 3782 3078 w +3510 3568 432 432 De +(tiler) 3626 3582 w +(1) 3782 3582 w +3510 4072 432 432 De +7 /LucidaSansUnicode20 f +(&) 3691 4086 w +3510 4576 432 432 De +7 /LucidaSansUnicode00 f +(tiler) 3627 4590 w +(n) 3783 4590 w +4302 3064 432 432 De +(rasterizer) 4322 3078 w +(0) 4670 3078 w +4302 3568 432 432 De +(rasterizer) 4322 3582 w +(1) 4670 3582 w +4302 4072 432 432 De +7 /LucidaSansUnicode20 f +(&) 4483 4086 w +4302 4576 432 432 De +7 /LucidaSansUnicode00 f +(rasterizer) 4323 4590 w +(n) 4671 4590 w +3090 3670 3569 3213 Dl +3530 3275 3569 3213 Dl +3504 3249 3568 3213 Dl +3139 3754 3519 3634 Dl +3456 3672 3519 3634 Dl +3445 3637 3519 3633 Dl +3139 3885 3519 4005 Dl +3445 4002 3519 4006 Dl +3456 3967 3519 4005 Dl +3090 3969 3569 4426 Dl +3504 4390 3568 4426 Dl +3530 4364 3569 4426 Dl +3942 3064 4302 3064 Dl +4230 3082 4302 3064 Dl +4230 3046 4302 3064 Dl +3908 3179 4335 3451 Dl +4265 3428 4335 3451 Dl +4284 3398 4335 3452 Dl +3859 3233 4383 3901 Dl +4325 3856 4383 3901 Dl +4354 3834 4384 3901 Dl +3826 3255 4417 4384 Dl +4368 4329 4417 4384 Dl +4400 4312 4417 4384 Dl +3908 3452 4335 3180 Dl +4284 3233 4335 3179 Dl +4265 3203 4335 3180 Dl +3942 3568 4302 3568 Dl +4230 3586 4302 3568 Dl +4230 3550 4302 3568 Dl +3908 3683 4335 3955 Dl +4265 3932 4335 3955 Dl +4284 3902 4335 3956 Dl +3859 3737 4383 4405 Dl +4325 4360 4383 4405 Dl +4354 4338 4384 4405 Dl +10 /LucidaSans-Demi f +(Figure 1) 720 4990 w 10 /LucidaSansUnicode00 f -(Antares Telecom Laboratories) 2156 1960 w -(Albatera, Alicante) 2451 2100 w +(: For a) 1142 4990 w 10 /LucidaSans-Demi f -(1.) 720 2700 w -(Data Structures) 873 2700 w -(1.1.) 720 2940 w -(Camera) 962 2940 w -9 /LucidaTypewriter f -(struct) 920 3110 w -(Camera) 1375 3110 w -({) 1830 3110 w -(};) 920 3330 w +(2\(n+1\)) 1481 4990 w 10 /LucidaSansUnicode00 f -(A camera) 970 3546 w -8 /S1 f -(__________________) 720 6980 w -8 /LucidaSansUnicode00 f -(ACHTUNG!) 720 7080 w -(this) 1163 7080 w -(is) 1333 7080 w -(a) 1423 7080 w -8 /LucidaSans-Demi f -(WORK) 1493 7080 w -(IN) 1769 7080 w -(PROGRESS) 1883 7080 w +(processor machine.) 1843 4990 w +10 /LucidaSans-Demi f +(The scene) 720 5230 w +2196 5572 2196 5428 Dl +2196 5428 2556 5428 Dl +2556 5428 2556 5572 Dl +2556 5572 2196 5572 Dl +7 /LucidaSansUnicode00 f +(Scene) 2279 5514 w +2376 5572 2376 5716 Dl +2376 5716 2448 5716 Dl +2448 5788 2448 5644 Dl +2448 5644 2808 5644 Dl +2808 5644 2808 5788 Dl +2808 5788 2448 5788 Dl +(Entity) 2534 5730 w +2628 5788 2628 5932 Dl +2628 5932 2700 5932 Dl +2700 6004 2700 5860 Dl +2700 5860 3060 5860 Dl +3060 5860 3060 6004 Dl +3060 6004 2700 6004 Dl +(Model) 2777 5946 w +2880 6004 2880 6148 Dl +2880 6148 2952 6148 Dl +2952 6220 2952 6076 Dl +2952 6076 3312 6076 Dl +3312 6076 3312 6220 Dl +3312 6220 2952 6220 Dl +(Mesh) 3043 6162 w +3132 6220 3132 6364 Dl +3132 6364 3204 6364 Dl +3204 6436 3204 6292 Dl +3204 6292 3564 6292 Dl +3564 6292 3564 6436 Dl +3564 6436 3204 6436 Dl +(Primitive) 3237 6378 w +3132 6364 3132 6508 Dl +3132 6508 3132 6652 Dl +3132 6652 3204 6652 Dl +3204 6724 3204 6580 Dl +3204 6580 3564 6580 Dl +3564 6580 3564 6724 Dl +3564 6724 3204 6724 Dl +(Material) 3248 6666 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 +10 /LucidaSans-Demi f +(Tile-based rendering) 720 840 w +2070 1866 2106 1866 Dl +2142 1866 2178 1866 Dl +2214 1866 2250 1866 Dl +2286 1866 2322 1866 Dl +2358 1866 2394 1866 Dl +2430 1866 2466 1866 Dl +2502 1866 2538 1866 Dl +2574 1866 2610 1866 Dl +2646 1866 2682 1866 Dl +2718 1866 2754 1866 Dl +2790 1866 2826 1866 Dl +2862 1866 2898 1866 Dl +2934 1866 2970 1866 Dl +2970 1866 2970 1830 Dl +2970 1812 2970 1776 Dl +2970 1758 2970 1722 Dl +2970 1722 2934 1722 Dl +2898 1722 2862 1722 Dl +2826 1722 2790 1722 Dl +2754 1722 2718 1722 Dl +2682 1722 2646 1722 Dl +2610 1722 2574 1722 Dl +2538 1722 2502 1722 Dl +2466 1722 2430 1722 Dl +2394 1722 2358 1722 Dl +2322 1722 2286 1722 Dl +2250 1722 2214 1722 Dl +2178 1722 2142 1722 Dl +2106 1722 2070 1722 Dl +2070 1722 2070 1758 Dl +2070 1776 2070 1812 Dl +2070 1830 2070 1866 Dl +7 /LucidaSansUnicode00 f +(tile 0) 2435 1808 w +2070 2010 2106 2010 Dl +2142 2010 2178 2010 Dl +2214 2010 2250 2010 Dl +2286 2010 2322 2010 Dl +2358 2010 2394 2010 Dl +2430 2010 2466 2010 Dl +2502 2010 2538 2010 Dl +2574 2010 2610 2010 Dl +2646 2010 2682 2010 Dl +2718 2010 2754 2010 Dl +2790 2010 2826 2010 Dl +2862 2010 2898 2010 Dl +2934 2010 2970 2010 Dl +2970 2010 2970 1974 Dl +2970 1956 2970 1920 Dl +2970 1902 2970 1866 Dl +2970 1866 2934 1866 Dl +2898 1866 2862 1866 Dl +2826 1866 2790 1866 Dl +2754 1866 2718 1866 Dl +2682 1866 2646 1866 Dl +2610 1866 2574 1866 Dl +2538 1866 2502 1866 Dl +2466 1866 2430 1866 Dl +2394 1866 2358 1866 Dl +2322 1866 2286 1866 Dl +2250 1866 2214 1866 Dl +2178 1866 2142 1866 Dl +2106 1866 2070 1866 Dl +2070 1866 2070 1902 Dl +2070 1920 2070 1956 Dl +2070 1974 2070 2010 Dl +(tile 1) 2435 1952 w +2070 2154 2106 2154 Dl +2142 2154 2178 2154 Dl +2214 2154 2250 2154 Dl +2286 2154 2322 2154 Dl +2358 2154 2394 2154 Dl +2430 2154 2466 2154 Dl +2502 2154 2538 2154 Dl +2574 2154 2610 2154 Dl +2646 2154 2682 2154 Dl +2718 2154 2754 2154 Dl +2790 2154 2826 2154 Dl +2862 2154 2898 2154 Dl +2934 2154 2970 2154 Dl +2970 2154 2970 2118 Dl +2970 2100 2970 2064 Dl +2970 2046 2970 2010 Dl +2970 2010 2934 2010 Dl +2898 2010 2862 2010 Dl +2826 2010 2790 2010 Dl +2754 2010 2718 2010 Dl +2682 2010 2646 2010 Dl +2610 2010 2574 2010 Dl +2538 2010 2502 2010 Dl +2466 2010 2430 2010 Dl +2394 2010 2358 2010 Dl +2322 2010 2286 2010 Dl +2250 2010 2214 2010 Dl +2178 2010 2142 2010 Dl +2106 2010 2070 2010 Dl +2070 2010 2070 2046 Dl +2070 2064 2070 2100 Dl +2070 2118 2070 2154 Dl +7 /LucidaSansUnicode20 f +(&) 2485 2096 w +2070 2298 2106 2298 Dl +2142 2298 2178 2298 Dl +2214 2298 2250 2298 Dl +2286 2298 2322 2298 Dl +2358 2298 2394 2298 Dl +2430 2298 2466 2298 Dl +2502 2298 2538 2298 Dl +2574 2298 2610 2298 Dl +2646 2298 2682 2298 Dl +2718 2298 2754 2298 Dl +2790 2298 2826 2298 Dl +2862 2298 2898 2298 Dl +2934 2298 2970 2298 Dl +2970 2298 2970 2262 Dl +2970 2244 2970 2208 Dl +2970 2190 2970 2154 Dl +2970 2154 2934 2154 Dl +2898 2154 2862 2154 Dl +2826 2154 2790 2154 Dl +2754 2154 2718 2154 Dl +2682 2154 2646 2154 Dl +2610 2154 2574 2154 Dl +2538 2154 2502 2154 Dl +2466 2154 2430 2154 Dl +2394 2154 2358 2154 Dl +2322 2154 2286 2154 Dl +2250 2154 2214 2154 Dl +2178 2154 2142 2154 Dl +2106 2154 2070 2154 Dl +2070 2154 2070 2190 Dl +2070 2208 2070 2244 Dl +2070 2262 2070 2298 Dl +7 /LucidaSansUnicode00 f +(tile n) 2435 2240 w +2034 2334 2034 1686 Dl +2034 1686 3006 1686 Dl +3006 1686 3006 2334 Dl +3006 2334 2034 2334 Dl +(Screen) 1774 1736 w +3330 1254 432 432 De +(rasterizer) 3350 1268 w +(0) 3698 1268 w +3330 1758 432 432 De +(rasterizer) 3350 1772 w +(1) 3698 1772 w +3330 2262 432 432 De +7 /LucidaSansUnicode20 f +(&) 3511 2276 w +3330 2766 432 432 De +7 /LucidaSansUnicode00 f +(rasterizer) 3351 2780 w +(n) 3699 2780 w +2970 1794 3330 1254 Dl +2970 1938 3330 1758 Dl +2970 2082 3330 2262 Dl +2970 2226 3330 2766 Dl +10 /LucidaSans-Demi f +(Figure 2) 720 3180 w +10 /LucidaSansUnicode00 f +(: Per tile rasterizers.) 1142 3180 w +2070 4170 2106 4170 Dl +2142 4170 2178 4170 Dl +2214 4170 2250 4170 Dl +2286 4170 2322 4170 Dl +2358 4170 2394 4170 Dl +2430 4170 2466 4170 Dl +2502 4170 2538 4170 Dl +2574 4170 2610 4170 Dl +2646 4170 2682 4170 Dl +2718 4170 2754 4170 Dl +2790 4170 2826 4170 Dl +2862 4170 2898 4170 Dl +2934 4170 2970 4170 Dl +2970 4170 2970 4134 Dl +2970 4116 2970 4080 Dl +2970 4062 2970 4026 Dl +2970 4026 2934 4026 Dl +2898 4026 2862 4026 Dl +2826 4026 2790 4026 Dl +2754 4026 2718 4026 Dl +2682 4026 2646 4026 Dl +2610 4026 2574 4026 Dl +2538 4026 2502 4026 Dl +2466 4026 2430 4026 Dl +2394 4026 2358 4026 Dl +2322 4026 2286 4026 Dl +2250 4026 2214 4026 Dl +2178 4026 2142 4026 Dl +2106 4026 2070 4026 Dl +2070 4026 2070 4062 Dl +2070 4080 2070 4116 Dl +2070 4134 2070 4170 Dl +7 /LucidaSansUnicode00 f +(0) 2498 4112 w +2070 4314 2106 4314 Dl +2142 4314 2178 4314 Dl +2214 4314 2250 4314 Dl +2286 4314 2322 4314 Dl +2358 4314 2394 4314 Dl +2430 4314 2466 4314 Dl +2502 4314 2538 4314 Dl +2574 4314 2610 4314 Dl +2646 4314 2682 4314 Dl +2718 4314 2754 4314 Dl +2790 4314 2826 4314 Dl +2862 4314 2898 4314 Dl +2934 4314 2970 4314 Dl +2970 4314 2970 4278 Dl +2970 4260 2970 4224 Dl +2970 4206 2970 4170 Dl +2970 4170 2934 4170 Dl +2898 4170 2862 4170 Dl +2826 4170 2790 4170 Dl +2754 4170 2718 4170 Dl +2682 4170 2646 4170 Dl +2610 4170 2574 4170 Dl +2538 4170 2502 4170 Dl +2466 4170 2430 4170 Dl +2394 4170 2358 4170 Dl +2322 4170 2286 4170 Dl +2250 4170 2214 4170 Dl +2178 4170 2142 4170 Dl +2106 4170 2070 4170 Dl +2070 4170 2070 4206 Dl +2070 4224 2070 4260 Dl +2070 4278 2070 4314 Dl +(1) 2498 4256 w +2070 4458 2106 4458 Dl +2142 4458 2178 4458 Dl +2214 4458 2250 4458 Dl +2286 4458 2322 4458 Dl +2358 4458 2394 4458 Dl +2430 4458 2466 4458 Dl +2502 4458 2538 4458 Dl +2574 4458 2610 4458 Dl +2646 4458 2682 4458 Dl +2718 4458 2754 4458 Dl +2790 4458 2826 4458 Dl +2862 4458 2898 4458 Dl +2934 4458 2970 4458 Dl +2970 4458 2970 4422 Dl +2970 4404 2970 4368 Dl +2970 4350 2970 4314 Dl +2970 4314 2934 4314 Dl +2898 4314 2862 4314 Dl +2826 4314 2790 4314 Dl +2754 4314 2718 4314 Dl +2682 4314 2646 4314 Dl +2610 4314 2574 4314 Dl +2538 4314 2502 4314 Dl +2466 4314 2430 4314 Dl +2394 4314 2358 4314 Dl +2322 4314 2286 4314 Dl +2250 4314 2214 4314 Dl +2178 4314 2142 4314 Dl +2106 4314 2070 4314 Dl +2070 4314 2070 4350 Dl +2070 4368 2070 4404 Dl +2070 4422 2070 4458 Dl +7 /LucidaSansUnicode20 f +(&) 2485 4400 w +2070 4602 2106 4602 Dl +2142 4602 2178 4602 Dl +2214 4602 2250 4602 Dl +2286 4602 2322 4602 Dl +2358 4602 2394 4602 Dl +2430 4602 2466 4602 Dl +2502 4602 2538 4602 Dl +2574 4602 2610 4602 Dl +2646 4602 2682 4602 Dl +2718 4602 2754 4602 Dl +2790 4602 2826 4602 Dl +2862 4602 2898 4602 Dl +2934 4602 2970 4602 Dl +2970 4602 2970 4566 Dl +2970 4548 2970 4512 Dl +2970 4494 2970 4458 Dl +2970 4458 2934 4458 Dl +2898 4458 2862 4458 Dl +2826 4458 2790 4458 Dl +2754 4458 2718 4458 Dl +2682 4458 2646 4458 Dl +2610 4458 2574 4458 Dl +2538 4458 2502 4458 Dl +2466 4458 2430 4458 Dl +2394 4458 2358 4458 Dl +2322 4458 2286 4458 Dl +2250 4458 2214 4458 Dl +2178 4458 2142 4458 Dl +2106 4458 2070 4458 Dl +2070 4458 2070 4494 Dl +2070 4512 2070 4548 Dl +2070 4566 2070 4602 Dl +7 /LucidaSansUnicode00 f +(n) 2499 4544 w +2142 4350 2592 4206 Dl +2592 4206 2754 4530 Dl +2754 4530 2142 4350 Dl +2034 4638 2034 3990 Dl +2034 3990 3006 3990 Dl +3006 3990 3006 4638 Dl +3006 4638 2034 4638 Dl +(Screen) 1774 4040 w +3330 3558 432 432 De +(rasterizer) 3350 3572 w +(0) 3698 3572 w +3330 4062 432 432 De +(rasterizer) 3350 4076 w +(1) 3698 4076 w +3330 4566 432 432 De +7 /LucidaSansUnicode20 f +(&) 3511 4580 w +3330 5070 432 432 De +7 /LucidaSansUnicode00 f +(rasterizer) 3351 5084 w +(n) 3699 5084 w +2970 4098 2990 4068 Dl +3007 4041 3027 4011 Dl +3045 3984 3065 3954 Dl +3083 3928 3103 3898 Dl +3121 3871 3141 3841 Dl +3158 3814 3178 3784 Dl +3196 3758 3216 3728 Dl +3234 3701 3254 3671 Dl +3272 3644 3292 3614 Dl +3309 3588 3329 3558 Dl +3304 3627 3329 3558 Dl +3275 3607 3329 3558 Dl +2970 4242 3330 4062 Dl +3273 4110 3329 4062 Dl +3257 4077 3329 4062 Dl +2970 4386 3330 4566 Dl +3257 4550 3329 4565 Dl +3273 4517 3329 4565 Dl +2970 4530 3330 5070 Dl +3275 5020 3329 5069 Dl +3304 5000 3329 5069 Dl +10 /LucidaSans-Demi f +(Figure 3) 720 5484 w +10 /LucidaSansUnicode00 f +(: Raster task scheduling.) 1142 5484 w +cleartomark +showpage +saveobj restore +%%EndPage: 2 2 %%Trailer done -%%DocumentFonts: S1 LucidaSansUnicode00 LucidaSans-Demi LucidaSans-Italic LucidaTypewriter -%%Pages: 1 +%%DocumentFonts: LucidaSansUnicode20 LucidaSansUnicode00 LucidaSans-Demi LucidaSans-Italic +%%Pages: 2 -- cgit v1.2.3