Copyright © 1985, 1986 by Xerox Corporation. All rights reserved.
by Bryan Preas August 29, 1985 2:48:22 pm PDT
last edited by Bryan Preas April 3, 1986 9:45:25 am PST
RTBasic:
CEDAR
DEFINITIONS =
BEGIN
SideOrNone: TYPE = {bottom, top, left, right, none};
Side: TYPE = SideOrNone[bottom .. right];
LRSide: TYPE = SideOrNone[left .. right];
TBSide: TYPE = SideOrNone[bottom .. top];
DirectionOrNone: TYPE = {horizontal, vertical, none};
Direction: TYPE = DirectionOrNone[horizontal .. vertical];
AboveOrBelow: TYPE = {above, below};
PQPos:
TYPE =
RECORD[
p: D2Basic.Number,
q: D2Basic.Number];
PQRectRef: TYPE = REF PQRect;
PQRect:
TYPE =
RECORD[
c1, c2: PQPos];
PQRectList: TYPE = LIST OF PQRect;
Range:
TYPE =
RECORD [
l, r: D2Basic.Number];
RangeList: TYPE = LIST OF Range;
RefRange: TYPE = REF Range;
OtherSide:
PROCEDURE [side: Side]
RETURNS [Side];
OtherDirection:
PROCEDURE [direction: Direction]
RETURNS [Direction];
OtherRelation:
PROCEDURE [aboveOrBelow: AboveOrBelow]
RETURNS [AboveOrBelow];
SimpleCompare:
PROCEDURE [result1, result2: D2Basic.Number]
RETURNS [result: Basics.Comparison];
XYToPQ:
PROC [pDir: Direction, pos: D2Basic.Pos]
RETURNS [pqPos: PQPos];
convert a position from x-y to p-q space.
PQToXY:
PROC [pDir: Direction, pqPos: PQPos]
RETURNS [pos: D2Basic.Pos];
convert a position from p-q to x-y space.
IRSize:
PROC [obj:
CD.Object]
RETURNS [
CD.Position];
END.