<> <> <> <> <<>> DIRECTORY Lines2dTypes; GGBasicTypes: CEDAR DEFINITIONS = BEGIN Angle: TYPE = REAL; Edge: TYPE = Lines2dTypes.Edge; Point: TYPE = Lines2dTypes.Point; Matrix3by3: TYPE = ARRAY [1..3] OF ARRAY [1..3] OF REAL; Vector: TYPE = Lines2dTypes.Vector; Circle: TYPE = REF CircleObj; CircleObj: TYPE = RECORD [ origin: Point, radius: REAL ]; Arc: TYPE = REF ArcObj; ArcObj: TYPE = RECORD [ circle: Circle, ccw: BOOL, p0, p2: Point, -- the arc is swept out by going counter-clockwise from p0 to p2 theta0, deltaTheta: REAL, -- theta0 is the angle at p0. theta0 + deltaTheta is the angle at p2. edge: Edge -- if the arc is straight ]; Ray: TYPE = Lines2dTypes.Ray; RayObj: TYPE = Lines2dTypes.RayObj; BitVector: TYPE = REF BitVectorObj; BitVectorObj: TYPE = RECORD [ bits: PACKED SEQUENCE len: NAT OF BOOL]; -- added PACKED. KAP February 28, 1986 BitMatrix: TYPE = REF BitMatrixObj; -- for SequenceObj. KAP April 4, 1986 BitMatrixObj: TYPE = RECORD [ vectors: SEQUENCE len: NAT OF BitVector]; END.