DIRECTORY; ThreeDPackage: CEDAR DEFINITIONS ~ BEGIN Triple: TYPE ~ RECORD [ x, y, z: REAL]; Quad: TYPE ~ RECORD [ x, y, z, w: REAL]; Transformation3D: TYPE ~ RECORD [ a, b, c, d: Quad]; SumTriple: PROCEDURE [t1, t2: Triple] RETURNS [Triple]; DiffTriple: PROCEDURE [t1, t2: Triple] RETURNS [Triple]; ScaleTriple: PROCEDURE [t: Triple, s: REAL] RETURNS [Triple]; Normalize: PROC[v: Triple] RETURNS[Triple]; DotProd: PROC[v1, v2: Triple] RETURNS [REAL]; CrossProd: PROC[v1, v2: Triple] RETURNS [vOut: Triple]; GetIDTransform: PUBLIC PROC[] RETURNS[id: Transformation3D]; ConcatT: PROC[xfm1, xfm2: Transformation3D] RETURNS[xfmOut: Transformation3D]; Transform3D: PROC[ vtx: Triple, xfm: Transformation3D] RETURNS [Triple]; TransformVec3D: PROC[ vtx: Triple, xfm: Transformation3D] RETURNS [Triple]; Translate3D: PROC[ delta: Triple] RETURNS [Transformation3D]; Rotate3D: PROC[base, axis: Triple, theta: REAL] RETURNS[Transformation3D]; END. HThreeDPackage.mesa Last Edited by: Crow, December 5, 1983 7:47 pm Κ‚˜headšœ™Jšœ.™.J˜JšΟk ˜ —head2šœœ ˜ Jšœ˜J˜—Jšœœœ œ˜'Jšœœœœ˜(Iunitšœœœ˜4M˜J˜MšΟn œ œœ ˜8Iašž œ œœ ˜8Nšž œ œœœ ˜=Nšž œœ œ ˜+Jšžœœœœ˜-Jšž œœœ˜7Jšžœ œœ˜