# Section 8.9:
Geometric Classes

This section of the required library contains definitions of those abstractions and classes which define one, two and three dimensional objects. The requirements for these stem from the cultural need to specify a paper size and the need to provide angle objects.

1. Abstract Classes

   1. $DIMS - this abstraction models the concept of a one-dimensional geometric figure and its properties.
   2. $PLANES - this abstraction models the concept of a two-dimensional geometric figure and its properties.
   3. $ANGLES - this abstraction models the concept of a geometric angle, including the requirement for trigonometric functions.

2. Immutable Classes

   1. LENGTH - this class implements the notion of a one-dimensional line with the given length.
   2. UNITS - this enumeration class implements the notion of a unit of linear measure (eg mms, kms).
   3. ASPECTS - this enumeration class implements the notion of the aspect of a rectangular plane figure.
   4. DIRECTIONS - this enumeration class implements the notion of directions in a Cartesian Coordinate plane (eg Up, Down).
   5. POINT - this class implements the notion of a position on a plane defined in Cartesian co-ordinates.
   6. OFFSET - this class implements the offset from one point to another in the same plane.
   7. ANGLE - this class implements the notion of a planar angle including trigonometric operations.
   8. ANGLED - this class implements the notion of a planar angle including trigonometric operations with a greater precision than ANGLE.
   9. BOX - this class implements the notion of a rectangular box in a single plane, including box intersection facilities.
   10. RECTANGLE - this class implements the notion of a plane rectangle

| Language Index |  | Library Index

Comments or enquiries should be made to Keith Hopper. Page last modified: Friday, 10 March 2000. |