<> <> <> DIRECTORY IO, SVModelTypes, SVSceneTypes; DisplayListToTree: CEDAR DEFINITIONS = BEGIN Slice: TYPE = SVSceneTypes.Slice; Camera: TYPE = SVModelTypes.Camera; CoordSysList: TYPE = SVModelTypes.CoordSysList; CSGTree: TYPE = SVSceneTypes.CSGTree; Primitive: TYPE = SVSceneTypes.Primitive; Scene: TYPE = SVSceneTypes.Scene; CreateEmptyTree: PROC [] RETURNS [tree: CSGTree]; AssemblyToTree: PROC [assembly: Slice, scene: Scene, camera: Camera, oldTree: CSGTree _ NIL, ignoreMoving: BOOL _ FALSE] RETURNS [tree: CSGTree]; <> PrimitiveFromAssembly: PROC [slice: Slice, scene: Scene, inverted, ignoreMoving: BOOL] RETURNS [prim: Primitive]; PrimitiveAssemblyWithoutMO: ERROR; CoordSysListFromScene: PROC [scene: Scene] RETURNS [csl: CoordSysList]; <> ListTree: PROC [outHandle: IO.STREAM, tree: CSGTree]; <> CommonAncestor: PROC [red: Slice, blue: Slice, root: Slice] RETURNS [gramps: Slice]; <> IsSuccessorOf: PROC [testChild: Slice, testAncestor: Slice] RETURNS [BOOL]; <> AncestorAtLevel: PROC [child: Slice, root: Slice, level: NAT] RETURNS [gramps: Slice]; <> END.