Scad:
TYPE ~
RECORD [
surface: MultiPolynomial.Ref,
named: BOOLEAN,
name: Rope.ROPE,
color: ImagerColor.RGB,
cells: REF CellSequence];
CellRec:
TYPE ~
RECORD [
indexX: INT,
indexY: INT,
indexZ: INT,
dimension: CARDINAL,
vertices: REF VertexSequence,
polygons: REF TriangleSequence,
definingFormula: QuantifierFreeFormula];
Defining formula of a cell.
QuantifierFreeFormula:
TYPE ~
RECORD [
isCompound: BOOLEAN,
compoundOperator: CompoundOperator,
compoundArguments: REF QuantifierFreeFormulaSequence,
simpleOperator: SimpleOperator,
simpleArgument: MultiPolynomial.Ref];
QuantifierFreeFormulaSequence:
TYPE ~ RECORD [
formulas: SEQUENCE length: NAT OF QuantifierFreeFormula];
CompoundOperator: TYPE ~ {and, or, none};
SimpleOperator:
TYPE ~ {isPositive, isZero, isNegative, none};