GGTypes: CEDAR DEFINITIONS = BEGIN Point: TYPE = ARRAY[1..2] OF REAL; Vector: TYPE = ARRAY[1..2] OF REAL; Matrix3by3: TYPE = ARRAY [1..3] OF ARRAY [1..3] OF REAL; Angle: TYPE = REAL; Edge: TYPE = REF EdgeObj; EdgeObj: TYPE = RECORD [ line: Line, -- the line which passes through the endpoints of this edge startIsFirst: BOOL, start, end: Point]; Line: TYPE = REF LineObj; LineObj: TYPE = RECORD [ theta: REAL, -- angle in (-pi..pi] d: REAL, -- distance from line to origin c: REAL, -- cos(theta). Cached for convenience. s: REAL, -- sin(theta). Cached for convenience. slope: REAL, yInt: REAL -- for historical (Solidviews) reasons ]; END. ~GGTypes.mesa Author: Eric Bier on June 4, 1985 4:34:02 pm PDT Last edited by Bier on June 4, 1985 4:34:07 pm PDT Contents: Definitions of data structures used to represent two dimensional entities. Line equation of the form: y*cos(theta) - x*sin(theta) -d = 0, where theta is the angle which the line makes with the x axis and d is the distance from the line to the origin. Κz˜Ihead1™ Iprocšœ0™0Lšœ2™2LšœU™UL™Lšœ Οkœ˜Lš˜L˜Lš œœœœœ˜"Lš œœœœœ˜#Lš œ œœœœœœ˜8Lšœœœ˜L˜Lšœœœ ˜šœ œœ˜Lšœ Οc;˜GLšœœ˜Lšœ˜L˜—Lšœœœ ˜šœ œœ˜Lšœ>™>Lšœp™pLšœœž˜"Lšœœž˜(Lšœœž'˜0Lšœœž'˜0Lšœ˜ Lšœœ'˜1Lšœ˜—J˜Jšœ˜—…—ˆ€