(FILECREATED "29-Apr-87 12:51:42" {QV}<NOTECARDS>1.3K>NEXT>KOTOSKETCHPATCHES.;5 6161 changes to: (VARS KOTOSKETCHPATCHESCOMS) previous date: "23-Apr-87 19:48:15" {QV}<NOTECARDS>1.3K>NEXT>KOTOSKETCHPATCHES.;3) (* Copyright (c) 1987 by Xerox Corporation. All rights reserved.) (PRETTYCOMPRINT KOTOSKETCHPATCHESCOMS) (RPAQQ KOTOSKETCHPATCHESCOMS ((DECLARE: EVAL@COMPILE DONTCOPY (FILES (LOADFROM FROM {CF}<PAPERWORKS>) SKETCH SKETCHOBJ)) (FNS MAKE.IMAGE.OBJECT.OF.SKETCH SKETCH.VIEWER.GRID SKETCH.VIEWER.SCALE SKETCH.REGION.VIEWED))) (DECLARE: EVAL@COMPILE DONTCOPY (FILESLOAD (LOADFROM FROM {CF}<PAPERWORKS>) SKETCH SKETCHOBJ) ) (DEFINEQ (MAKE.IMAGE.OBJECT.OF.SKETCH [LAMBDA (SKETCH REGION SCALE GRIDSIZE) (* rrb "21-Apr-87 11:18") (* Returns a sketch image object. REGION is the region in sketch coordinates that the image object will show. SCALE is the scale at which it will be shown. GRIDSIZE is the grid size of the sketch. If SKETCH is a viewer, any of the other arguments that are NIL will be filled in from the values in the viewer. If SKETCH is a sketch, REGION defaults to the extent of the sketch, SCALE defaults to 1.0 and GRIDSIZE defaults to 8.0.) (SKETCH.IMAGEOBJ (INSURE.SKETCH SKETCH) (COND ((REGIONP REGION)) (REGION (ERROR REGION " illegal argument.")) (T (SKETCH.REGION.VIEWED SKETCH))) (COND ((NUMBERP SCALE)) ((WINDOWP SKETCH) (VIEWER.SCALE SKETCH)) (T 1.0)) (COND ((NUMBERP GRIDSIZE)) ((WINDOWP SKETCH) (SK.GRIDFACTOR SKETCH)) (T 8.0]) (SKETCH.VIEWER.GRID [LAMBDA (VIEWER NEWGRID) (* rrb "21-Apr-87 12:27") (* returns and optionally sets the grid size of a sketch. VIEWER can be a viewer or a sketch image object.) (COND [(IMAGEOBJP VIEWER) (* it is a sketch image object) (PROG [(SKINFO (LISTP (IMAGEOBJPROP VIEWER (QUOTE OBJECTDATUM] (COND [(type? SKETCH (fetch (SKETCHIMAGEOBJ SKIO.SKETCH) of SKINFO)) (RETURN (PROG1 (fetch (SKETCHIMAGEOBJ SKIO.GRID) of SKINFO) (COND (NEWGRID (COND ((NUMBERP NEWGRID) (replace (SKETCHIMAGEOBJ SKIO.GRID) of SKINFO with NEWGRID)) (T (\ILLEGAL.ARG NEWGRID] (T (ERROR "not a sketch image object" VIEWER] ((WINDOWP VIEWER) (SK.GRIDFACTOR VIEWER NEWGRID)) (T (\ILLEGAL.ARG VIEWER]) (SKETCH.VIEWER.SCALE [LAMBDA (VIEWER NEWSCALE) (* rrb "21-Apr-87 12:25") (* returns and optionally sets the scale of a viewer.) (COND [(IMAGEOBJP VIEWER) (* it is a sketch image object) (PROG [(SKINFO (LISTP (IMAGEOBJPROP VIEWER (QUOTE OBJECTDATUM] (COND [(type? SKETCH (fetch (SKETCHIMAGEOBJ SKIO.SKETCH) of SKINFO)) (RETURN (PROG1 (fetch (SKETCHIMAGEOBJ SKIO.SCALE) of SKINFO) (COND (NEWSCALE (COND ((SK.INSURE.SCALE NEWSCALE) (replace (SKETCHIMAGEOBJ SKIO.SCALE) of SKINFO with NEWSCALE)) (T (\ILLEGAL.ARG NEWSCALE] (T (ERROR "not a sketch image object" VIEWER] [(WINDOWP VIEWER) (PROG1 (WINDOWPROP VIEWER (QUOTE SCALE)) (COND (NEWSCALE (COND ((SK.INSURE.SCALE NEWSCALE) (WINDOWPROP VIEWER (QUOTE SCALE) NEWSCALE) (SK.UPDATE.AFTER.SCALE.CHANGE VIEWER] (T (\ILLEGAL.ARG VIEWER]) (SKETCH.REGION.VIEWED (LAMBDA (VIEWER NEWREGION) (* rht: "22-Apr-87 21:13") (* returns the region in sketch coordinates of the area visible in SKETCHW.) (COND ((IMAGEOBJP VIEWER) (* it is a sketch image object) (PROG ((SKETCHIMAGEOBJ (LISTP (IMAGEOBJPROP VIEWER (QUOTE OBJECTDATUM)))) NEWVIEW) (COND ((type? SKETCH (fetch (SKETCHIMAGEOBJ SKIO.SKETCH) of SKETCHIMAGEOBJ)) (RETURN (PROG1 (fetch (SKETCHIMAGEOBJ SKIO.REGION) of SKETCHIMAGEOBJ) (COND (NEWREGION (COND ((REGIONP NEWREGION) (replace (SKETCHIMAGEOBJ SKIO.REGION) of SKETCHIMAGEOBJ with NEWREGION)) ((SETQ NEWVIEW (SKETCH.VIEW.FROM.NAME NEWREGION VIEWER)) (replace (SKETCHIMAGEOBJ SKIO.REGION) of SKETCHIMAGEOBJ with NEWVIEW)) ((EQ NEWREGION (QUOTE HOME)) (* change scale to 1.0 and set lower left of region viewed to (0,0).) NIL) (T (* HOME and named views aren't supported for image object sketches.) (\ILLEGAL.ARG NEWREGION)))))))) (T (ERROR "not a sketch image object" VIEWER))))) ((WINDOWP VIEWER) (PROG1 (WINDOWPROP VIEWER (QUOTE REGION.VIEWED)) (COND (NEWREGION (PROG (NEWVIEW) (RETURN (COND ((REGIONP NEWREGION) (SKETCH.GLOBAL.REGION.ZOOM VIEWER NEWREGION)) ((EQ NEWREGION (QUOTE HOME)) (SKETCH.HOME VIEWER)) ((SETQ NEWVIEW (SKETCH.VIEW.FROM.NAME NEWREGION VIEWER)) (SK.MOVE.TO.VIEW VIEWER NEWVIEW)) (T (\ILLEGAL.ARG NEWREGION))))))))) (T (\ILLEGAL.ARG VIEWER))))) ) (PUTPROPS KOTOSKETCHPATCHES COPYRIGHT ("Xerox Corporation" 1987)) (DECLARE: DONTCOPY (FILEMAP (NIL (705 6073 (MAKE.IMAGE.OBJECT.OF.SKETCH 715 . 1742) (SKETCH.VIEWER.GRID 1744 . 2805) ( SKETCH.VIEWER.SCALE 2807 . 4012) (SKETCH.REGION.VIEWED 4014 . 6071))))) STOP