| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- DEFINITION MODULE Rectangles;
- (*
- * REPERTOIRE
- * Release 1.6
- * By Charles Bradford and Cole Brecheen
- * (c) Copyright 1985-1992 PMI
- * Green Bay, Wisconsin
- * All rights reserved
- * (414) 468-6040
- *
- * $Header: D:/logfiles/defs/rectangl.dev 1.4 30 Dec 1990 18:03:54 coleb $
- *
- *)
- TYPE
- APoint =
- RECORD
- col, row : INTEGER;
- END;
- ALine =
- RECORD
- p1, p2 : APoint;
- END;
- ARectangle =
- RECORD
- CASE : BOOLEAN OF
- TRUE :
- TopLeft, BottomRight : APoint;
- | FALSE :
- col1, row1, col2, row2 : INTEGER;
- END;
- END;
- PROCEDURE PointInside(VAR p : APoint; VAR r :
- ARectangle) : BOOLEAN;
- PROCEDURE Distance(p1, p2 : APoint) : CARDINAL;
- PROCEDURE RectsIntersect(VAR r1, r2,
- intersection : ARectangle) : BOOLEAN;
- PROCEDURE LineInside(TheLine : ALine; r :
- ARectangle; VAR intersection : ALine) :
- BOOLEAN;
- PROCEDURE DefineRectangle(VAR r : ARectangle;
- col1, row1, col2, row2 : INTEGER);
- PROCEDURE DefineByPoints(VAR r : ARectangle;
- TopLeft, BottomRight : APoint);
- PROCEDURE RectIsInside( VAR r1, r2 : ARectangle
- ): BOOLEAN;
- PROCEDURE ShrinkRect( VAR r : ARectangle );
- PROCEDURE ExpandRect( VAR r : ARectangle );
- PROCEDURE Init();
- END Rectangles.
|