<<>> <> <> <> DIRECTORY G3dBasic, G3dMatrix, G3dTool, Imager; ImplicitPrimitives: CEDAR DEFINITIONS ~ BEGIN Quad: TYPE ~ G3dBasic.Quad; Segment: TYPE ~ G3dBasic.Segment; Triple: TYPE ~ G3dBasic.Triple; Matrix: TYPE ~ G3dMatrix.Matrix; Context: TYPE ~ Imager.Context; <> Ellipsoid: TYPE ~ REF EllipsoidRep; EllipsoidRep: TYPE ~ RECORD [ x, y, z: Segment ¬ [], m: Matrix ¬ NIL, aTerm, bTerm, cTerm: REAL ¬ 0.0, acc: Quad ¬ [] ]; EllipsoidDraw: PROC [e: Ellipsoid, context: Context, view: G3dTool.View]; <> EllipsoidMake: PROC [ p0, p1: Triple, lengthScale, widthScale, heightScale: REAL ¬ 1.0, refVec: Triple ¬ []] RETURNS [Ellipsoid]; <> EllipsoidValue: PROC [q: Triple, e: Ellipsoid] RETURNS [REAL]; <> END. <<>>