ImagerScanConverter.mesa
Copyright © 1984, 1985 by Xerox Corporation. All rights reserved.
Michael Plass, April 29, 1985 1:07:06 pm PDT
Doug Wyatt, March 7, 1985 2:40:16 pm PST
DIRECTORY
ImagerPath USING [PathProc],
ImagerPixelMap USING [DeviceRectangle, Function, PixelMap],
ImagerTransformation USING [Transformation];
ImagerScanConverter: CEDAR DEFINITIONS
~ BEGIN
PathProc: TYPE ~ ImagerPath.PathProc;
Transformation: TYPE ~ ImagerTransformation.Transformation;
DeviceRectangle: TYPE ~ ImagerPixelMap.DeviceRectangle;
PixelMap: TYPE ~ ImagerPixelMap.PixelMap;
Function: TYPE ~ ImagerPixelMap.Function;
DevicePath: TYPE ~ REF DevicePathRep;
DevicePathRep: TYPE;
CreatePath: PROC [path: PathProc,
transformation: Transformation ← NIL,
clipBox: DeviceRectangle,
scratch: DevicePath ← NIL -- for re-use of storage
] RETURNS [DevicePath];
BoundingBox: PROC [devicePath: DevicePath] RETURNS [DeviceRectangle];
Not always as tight as possible, but should be pretty close.
NumberOfRuns: PROC [devicePath: DevicePath] RETURNS [numberOfRuns: INT];
Guaranteed to be an upper bound, should be close to the actual.
ConvertToRuns: PROC [devicePath: DevicePath,
runProc: PROC [sMin, fMin: INTEGER, fSize: NAT],
clipBox: DeviceRectangle,
parityFill: BOOLEANFALSE
];
ConvertToPixels: PROC [devicePath: DevicePath,
pixelMap: PixelMap,
value: CARDINAL ← 1,
parityFill: BOOLEANFALSE,
function: Function ← [null, null]
];
ConvertToManhattanPolygon: PROC [devicePath: DevicePath,
clipBox: DeviceRectangle,
parityFill: BOOLEANFALSE
] RETURNS [LIST OF DeviceRectangle];
Satisfies assertion for an ImagerManhattan.Polygon.
END.