CoveringSets.mesa
Last Edited by: Arnon, May 3, 1986 3:53:47 pm PDT
Algebraic points as they occur as cad sample points.
DIRECTORY
Rope,
IO,
AlgebraClasses,
Ints,
BigRats,
RatIntervals,
Variables,
Polynomials,
AlgebraicNumbers,
Vectors,
Sequences;
CoveringSets:
CEDAR
DEFINITIONS
~ BEGIN OPEN AC: AlgebraClasses, BR: BigRats, RI: RatIntervals, VARS: Variables, AN: AlgebraicNumbers, POL: Polynomials, SEQ: Sequences;
CoveringSet Representation
CoveringSet: TYPE = AC.Object;
bigRatZero: BR.BigRat;
intZero: Ints.Int;
CoveringSetData: TYPE = REF CoveringSetDataRec;
CoveringSetDataRec:
TYPE =
RECORD [
cell: AC.Object ← NIL, -- cell to which this sample dataPoints belongs
stepSize: BR.BigRat ← NIL,
numDecimalPlaces: Ints.Int ← NIL,
reach: Ints.Int ← NIL,
boundingBox: Vectors.Vector ← NIL,
dataPoints: SEQ.Sequence ← NIL -- of Sequences of PTS.Point's
];
Instance Data for CoveringSet Structures
CoveringSetStructureData: TYPE = REF CoveringSetStructureDataRec;
CoveringSetStructureDataRec:
TYPE =
RECORD [
ambientSpaceDimension: NAT
];
CoveringSet Structure Ops
MakeCoveringSetStructure:
PROC [ambientSpaceDimension:
CARDINAL]
RETURNS [coveringSetStructure:
AC.Object];
IsCoveringSetStructure:
PROC [structure:
AC.Object]
RETURNS [
BOOL];
Conversion and IO
Write: AC.WriteOp;
Operations
SetCell: PROC [coveringSet, cell: AC.Object];
NumDecimalPlaces:
AC.UnaryOp;
END.