DIRECTORY SV2d, SV3d, SVInterfaceTypes, SVSceneTypes; SVCaret: CEDAR DEFINITIONS = BEGIN AlignmentObject: TYPE = SVSceneTypes.AlignmentObject; Matrix4by4: TYPE = SV3d.Matrix4by4; Point2d: TYPE = SV2d.Point2d; Point3d: TYPE = SV3d.Point3d; Primitive: TYPE = SVSceneTypes.Primitive; Skitter: TYPE = SVSceneTypes.Skitter; Slice: TYPE = SVSceneTypes.Slice; SliceDescriptor: TYPE = SVSceneTypes.SliceDescriptor; Vector3d: TYPE = SV3d.Vector3d; Create: PROC RETURNS [skitter: Skitter]; Copy: PROC [from: Skitter, to: Skitter]; Kill: PROC [skitter: Skitter]; Exists: PROC [skitter: Skitter] RETURNS [BOOL]; GetPosition: PROC [skitter: Skitter] RETURNS [skitterWorld: Matrix4by4]; GetPoint: PROC [skitter: Skitter] RETURNS [origin: Point3d]; SetAssemblyAndPrimitive: PROC [skitter: Skitter, assembly: Slice, primitive: Primitive]; SetAttractor: PROC [skitter: Skitter, cameraPt: Point2d, surfacePtWorld: Point3d, normalWorld: Vector3d, attractor: AlignmentObject]; NoAttractor: PROC [skitter: Skitter]; GetAttractor: PROC [skitter: Skitter] RETURNS [attractor: AlignmentObject]; PositionFromMatrix: PROC [skitter: Skitter, cameraPt: Point2d, skitterWorld: Matrix4by4]; END. .SVCaret.mesa Copyright c 1987 by Xerox Corporation. All rights reserved. Last edited by Bier on May 22, 1987 3:58:24 pm PDT Contents: Routines for placing the skitter in a Gargoyle3D scene. attractor should be an AlignmentObject (either a SliceDescriptor, AlignmentLine, AlignmentPoint, etc.) Κ²˜J˜Icodešœ ™ Kšœ Οmœ1™