%slides.jam (mbox) { (lw) .exch .def (ury) .exch .def (urx) .exch .def (lly) .exch .def (llx) .exch .def llx lly llx lw .add ury .drawbox llx ury lw .sub urx ury .drawbox urx lw .sub lly urx ury .drawbox llx lly urx lly lw .add .drawbox}.cvx .def (monk) { 0 0 .setcp white (monk.ais) .drawimage black 0 0 687 813 5 mbox } .cvx .def (elipse) {(ht) .exch .def (wt) .exch .def 0 ht 2. .div .moveto 0 ht 7 .mul 6. .div wt ht 7 .mul 6. .div wt ht 2. .div .curveto wt ht 6. .div .neg 0 ht 6. .div .neg 0 ht 2. .div .curveto}.cvx .def (belipse) {(ht) .exch .def (wt) .exch .def (bht) .exch .def (bwt) .exch .def 0 ht 2. .div 0 ht 7 .mul 6. .div wt ht 7 .mul 6. .div wt ht 2. .div bht bwt givenborder wt ht 2. .div wt ht 6. .div .neg 0 ht 6. .div .neg 0 ht 2. .div bht bwt givenborder}.cvx .def (nelipse) {(ht) .exch .def (wt) .exch .def 0 ht 2. .div .moveto 0 ht 6. .div .neg wt ht 6. .div .neg wt ht 2. .div .curveto wt ht 7 .mul 6. .div 0 ht 7 .mul 6. .div 0 ht 2. .div .curveto}.cvx .def (emonk) { .pushdc black 687 813 5 outlineelipse 5 5 .translate 677 803 elipse .cliparea white monk .popdc .pushdc 0 613 687 813 .clipbox 687 814 elipse .cliparea white 687 814 5 outlineelipse white 0 613 687 814 5 mbox .popdc}.cvx .def (plainemonk) {.pushdc black 687 813 5 outlineelipse 5 5 .translate 677 803 elipse .cliparea monk .popdc}.cvx .def (wbox) {.pushdc white .hsvcolor mbox}.cvx .def (r) (e .initdc).cvx .def (outlineelipse) {.pushdc (lw) .exch .def 2 .copy elipse lw lw .translate lw 2 .mul .sub .exch lw 2 .mul .sub .exch nelipse .drawarea .popdc }.cvx .def (arrow) {(aw) .exch .def (al).exch .def 0 0 .moveto 3 aw .mul aw 1.5 .mul .lineto 3 aw .mul aw 2. .div .lineto al aw 2. .div .lineto al aw -2. .div .lineto 3 aw .mul aw -2. .div .lineto 3 aw .mul aw .neg 1.5 .mul .lineto .drawarea}.cvx .def (tmonk) { .pushdc black 687 813 5 outlineelipse 5 5 .translate 677 803 elipse .cliparea white monk .popdc}.cvx .def (slide1) {.pushdc .7 .7 .scale blue 0 0 1000 1000 .drawbox .true .setopaque .pushdc 72 144 .translate .pushdc .4 .4 .scale white monk .popdc 5 72 .mul 72 .translate .pushdc .4 .4 .scale -30 .rotate tmonk .popdc .popdc .popdc .pushdc white 315 212 .translate 180 .rotate 40 8 arrow .popdc .pushdc white (timesroman18) .setfont 200 387 .translate 0 0 .setcp white (Scaled, rotated and clipped images) .drawtext .popdc} .cvx .def (sygirl) {.pushdc darkBlue 0 0 1000 1000 .drawbox .6 .6 .scale 250 150 .translate ygirl .popdc} .cvx .def (ygirl) (0 0 .setcp .true .setopaque (ygn-grn.ais) showg .false .setopaque (ygn-red.ais) showr (ygn-blu.ais) showb .true .setopaque).cvx .def (goldencream) (.11 .5 .97 .hsvcolor).cvx .def (goldenrod) (.11 1 1 .hsvcolor).cvx .def (oldrose) (.97 .4 .8 .hsvcolor).cvx .def (darkmoss) (.31 .17 .42 .hsvcolor).cvx .def (lightmoss) (.31 .17 .8 .hsvcolor).cvx .def (color1) (oldrose).load .def (color2) (goldencream) .load .def (cback) (darkmoss) .load .def (cameo) (.pushdc cback 0 0 1000 1000 .drawbox .6 .6 .scale 250 150 .translate 390 500 elipse .cliparea darkGray 0 0 1000 1000 .drawbox 0 0 .setcp girl .popdc).cvx .def %(borderpattern) (spiral) .load .def 15 80 cameoborder (cameoborder) {.pushdc .6 .6 .scale 250 150 .translate 390 500 belipse .popdc}.cvx .def (spiral) {color1 0 0 move 0 .5 line 1 -.5 line .5 -.5 line 0 0 line drawarea 1 .5 move .5 .5 line 1 0 line 1 .5 line drawarea color2 0 -.5 move 0 0 line .5 -.5 line 0 -.5 line drawarea .5 -.5 move 1 -.5 line 0 drawstroke 0 .5 move 1 -.5 line 1 0 line .5 .5 line 0 .5 line drawarea .5 .5 move 1 .5 line 0 drawstroke}.cvx .def (lowred) (.8 0 0 .rgbcolor .drawimage).cvx .def (lowgreen) (0 .8 0 .rgbcolor .drawimage).cvx .def (lowblue) (0 0 .8 .rgbcolor .drawimage).cvx .def (girl) (0 0 .setcp .true .setopaque (ygn-grn.ais) lowgreen .false .setopaque (ygn-red.ais) lowred (ygn-blu.ais) lowblue .true .setopaque).cvx .def (slide2) {.pushdc .7 .7 .scale blue 0 0 1000 1000 .drawbox .true .setopaque .pushdc 54 3 72 .mul .translate .pushdc .31 .31 .scale white monk white 0 613 687 814 5 mbox .popdc 3. 72 .mul 53 .translate .pushdc .31 .31 .scale -30 .rotate white 687 814 5 outlineelipse white 0 613 687 814 5 mbox .popdc 280.01 0 .translate .pushdc .31 .31 .scale -30 .rotate white emonk .popdc .popdc .popdc .pushdc white 211 230 .translate 180 .rotate 18 4 arrow .popdc .pushdc white 410 230 .translate 180 .rotate 18 4 arrow .popdc .pushdc white (timesroman18) .setfont 170 387 .translate 0 0 .setcp white (Transformation and clipping of an image) .drawtext .popdc .pushdc white (timesroman12) .setfont 36 341 .translate 0 0 .setcp white (Memory buffer load) .drawtext .popdc .pushdc white (timesroman12) .setfont 284 341 .translate 0 0 .setcp white (Transformation) .drawtext .popdc .pushdc white (timesroman12) .setfont 420 341 .translate 0 0 .setcp white (Intersection of shape) .drawtext 0 -12 .translate 0 0 .setcp(and buffer boundary) .drawtext .popdc} .cvx .def (slide3) {.pushdc .6 .6 .scale blue 0 0 1200 1200 .drawbox .true .setopaque .pushdc 54 3 72 .mul .translate .pushdc white star .popdc 0 60 .translate 2.5 72 .mul 0 .translate .pushdc -30 .rotate white star .popdc warrow 2.5 72 .mul 0 .translate .pushdc -30 .rotate white cstar .popdc warrow 2.5 72 .mul 0 .translate .pushdc white wcbox cbox -30 .rotate clipstar white cstar .popdc warrow 2.5 72 .mul 0 .translate .pushdc white wcbox cbox -30 .rotate orange fstar .popdc warrow .popdc .popdc .pushdc white (timesroman18) .setfont white 180 370 .translate 0 0 .setcp(Transformation, reduction, clipping ).drawtext 30 -20 .translate 0 0 .setcp(and scan conversion of a shape) .drawtext .popdc (Original) 63 259 text12out (Transformed) 164 259 text12out (Reduced) 294 259 text12out (Clipped) 400 259 text12out (Scan Converted) 500 259 text12out }.cvx .def (text12out) {.pushdc white (timesroman12) .setfont white .translate 0 0 .setcp .drawtext .popdc}.cvx .def (text18out) {.pushdc white (timesroman18) .setfont white .translate 0 0 .setcp .drawtext .popdc}.cvx .def (warrow) {.pushdc white .55 72 .mul 36 .translate 180 .rotate 22 4.5 arrow .popdc}.cvx .def (star) {22 33 .setcp 98 181 .drawto 178 40 .drawto 29 121 .drawto 158 164 .drawto 22 33 .drawto}.cvx .def (tr18) ((timesroman18) .setfont) .cvx .def (tr12) ((timesroman12) .setfont) .cvx .def (cstar) {22 33 .setcp 98 181 .drawto 115 150 .drawto 125 132 .setcp 178 40 .drawto 83 91 .drawto 58 104 .setcp 29 121 .drawto 158 164 .drawto 125 132 .drawto 83 91 .setcp 22 33 .drawto 75 136 .setcp 125 132 .drawto 75 136 .setcp 83 91 .drawto}.cvx .def (fstar) {22 33 .moveto 98 181 .lineto 178 40 .lineto 29 121 .lineto 158 164 .lineto .drawarea}.cvx .def (cbox) {78 -27 187 137 .clipbox}.cvx .def (wcbox) {75 -30 190 140 3 mbox}.cvx .def (clipstar) {22 33 .moveto 98 181 .lineto 178 40 .lineto 29 121 .lineto 158 164 .lineto .cliparea}.cvx .def (slide4) {.pushdc 0 -30 .translate blue 0 0 1200 1200 .drawbox (Device independence over a wide range of raster devices) 100 350 text18out (High resolution raster printers and plotters) 144 300 text18out (High resolution film recorders) 144 270 text18out (Low resolution bit-mapped displays) 144 240 text18out (Low resolution grey-scale and color displays) 144 210 text18out .popdc}.cvx .def (slide5) {.pushdc blue 0 0 1200 1200 .drawbox (Both output device and scanned source image coordinate systems) 80 350 text18out (are isolated from the user's virtual coordinate system) 80 330 text18out (Each output device implementation provides: ) 100 280 text18out (A mapping from the virtual to the device's coordinate system, and) 100 260 text18out (a clipping shape that bounds an area of the device.) 100 240 text18out (Each input source implementation provides: ) 100 200 text18out (A mapping from the source to the virtual coordinate system, and) 100 180 text18out (a clipping shape that bounds an area of the source.) 100 160 text18out .popdc}.cvx .def (slide6) {.pushdc 0 -30 .translate blue 0 0 1200 1200 .drawbox (Independence over a wide range of scanned image sources) 100 350 text18out (Images represented as bitmaps (1 bit/pixel)) 144 300 text18out (Grey-scale images (multi-bit/pixel)) 144 270 text18out (Color images (multi-sample/pixel)) 144 240 text18out (Images scanned in various directions) 144 210 text18out .popdc}.cvx .def (slide7) {.pushdc 0 -30 .translate blue 0 0 1200 1200 .drawbox (A Device Independent Graphics Imaging Model) 120 280 text18out (for use with Raster Devices) 190 260 text18out (John Warnock and Douglas Wyatt) 170 230 text12out (XEROX Palo Alto Research Center) 170 218 text12out .popdc}.cvx .def (slide8) {.pushdc blue 0 0 1200 1200 .drawbox (Integrates scanned images, text, and synthetically generated graphics) 72 350 text18out (into a uniform device independent metaphore) 72 330 text18out (Isolates the device dependent portions of the implementation )72 280 text18out (to a small set of primitives) 72 260 text18out (Device modules have been implemented for binary, grey-scale,) 72 210 text18out (and color raster display systems, and for high resolution) 72 190 text18out (black/white and color raster printers) 72 170 text18out .popdc }.cvx .def (slide9) {.pushdc blue 0 0 1200 1200 .drawbox 180 54 .translate .4 .4 .scale plainemonk .popdc (A Sample of Device Independence) 190 400 text18out .popdc}.cvx .def (slide10) {.pushdc 0 -30 .translate blue 0 0 1200 1200 .drawbox 185 149 .moveto 343 338 .lineto 385 153 .lineto 270 129 186 242 240 310 .curveto orange 427 257 .lineto orange .drawarea white 185 149 dot 343 338 dot 385 153 dot 270 129 dot 186 242 dot 240 310 dot 427 257 dot (moveto (1)) 165 132 text12out (lineto (2)) 352 333 text12out (lineto (3)) 393 147 text12out (4) 278 123 text12out (5) 194 238 text12out (curveto (6)) 226 317 text12out (lineto (7)) 436 252 text12out .popdc (Specification of a Path) 230 360 text18out }.cvx .def (dot)(2 .copy 3 .add .exch 3 .add .exch .drawbox).cvx .def (patternslide) {.pushdc blue 0 0 1200 1200 .drawbox (Define a pattern and map it on a curve) 172 350 text18out .popdc }.cvx .def (white){0 0 1 .hsvcolor}.cvx .def (black){0 0 0 .hsvcolor}.cvx .def (blue){.6 .75 .6 .hsvcolor}.cvx .def (setblue){ 128 .6 .75 .6 .sethsvmap}.cvx .def (orange){.05 1 .8 .hsvcolor}.cvx .def (setorange){ 130 .05 1 .8 .sethsvmap}.cvx .def