File: SVDraw3d.mesa
Last edited by Bier on December 18, 1982 1:19 am
Author: Eric Bier on August 16, 1984 9:32:45 pm PDT
Contents: Some useful combinations of Graphics operations
DIRECTORY
Graphics,
SV2d,
SV3d,
SVModelTypes,
SVRayTypes;
SVDraw3d: DEFINITIONS =
BEGIN
Camera: TYPE = SVModelTypes.Camera;
CoordSystem: TYPE = SVModelTypes.CoordSystem;
CSGTree: TYPE = SVRayTypes.CSGTree;
Matrix4by4: TYPE = SV3d.Matrix4by4;
Point2d: TYPE = SV2d.Point2d;
Point3d: TYPE = SV3d.Point3d;
Vector: TYPE = SV3d.Vector;
DrawCoordSys: PROC [dc: Graphics.Context, csCAMERA: Matrix4by4, camera: Camera];
DrawTargetCoordSys: PROC [dc: Graphics.Context, csCAMERA: Matrix4by4, camera: Camera];
DrawJack: PROC [dc: Graphics.Context, cs: CoordSystem, camera: Camera];
DrawMovee: PROC [dc: Graphics.Context, cs: CoordSystem, camera: Camera];
DrawPlaneSelection: PROC [dc: Graphics.Context, cs: CoordSystem, planeNum: NAT, camera: Camera];
DrawXPlane: PROC [dc: Graphics.Context, left, right, down, up: REAL, cs: CoordSystem, camera: Camera];
Draw the square bounded by left, right, down, and up (left-right = z, down-up = y) in the x = 0 plane of cs.
DrawYPlane: PROC [dc: Graphics.Context, left, right, down, up: REAL, cs: CoordSystem, camera: Camera];
Draw the square bounded by left, right, down, and up (left-right = x, down-up = z) in the y = 0 plane of cs.
DrawZPlane: PROC [dc: Graphics.Context, left, right, down, up: REAL, cs: CoordSystem, camera: Camera];
Draw the square bounded by left, right, down, and up (left-right = x, down-up = y) in the z = 0 plane of cs.
DrawVector: PROC [dc: Graphics.Context, v: Vector, origin: Point3d, camera: Camera]; -- assumes v is in camera coords.
DrawLocalVector: PROC [dc: Graphics.Context, v: Vector, origin: Point3d, camera: Camera, localCS: CoordSystem]; -- assumes v and origin are in localCS coords.
Draw2dCoordSys: PROC [dc: Graphics.Context, origin: Point2d, camera: Camera];
DrawX: PROC [dc: Graphics.Context, point: Point2d, camera: Camera];
DrawBoundBoxes: PROC [dc: Graphics.Context, tree: CSGTree, camera: Camera];
DrawBoundBox: PROC [dc: Graphics.Context, node: REF ANY, camera: Camera, xor: BOOL];
DrawBoundSpheres: PROC [dc: Graphics.Context, tree: CSGTree, camera: Camera];
END.