| C2DArc | Class which represents a curved line |
| C2DBase | Abstract base class for all Geometric entities |
| C2DBaseSet | A set of geometric entities of different types held as pointers to a base class geometric entity |
| C2DCircle | Class which represents a circle |
| C2DHoledPolyArc | Class which represents a curved polygon with holes |
| C2DHoledPolyArcSet | A set of curved polygons |
| C2DHoledPolyBase | Class which represents a C2DPolyBase with holes |
| C2DHoledPolyBaseSet | A collection of holed polygons |
| C2DHoledPolygon | Class which represents a polygon with holes |
| C2DHoledPolygonSet | A collection of holed polygons |
| C2DLine | Class which represents a line segment i.e. a finite line |
| C2DLineBase | C2DLineBase class, an abstract class which defines the functionality that a Line class must have |
| C2DLineBaseSet | C2DLineBaseSet class, a collection of lines |
| C2DLineBaseSetSet | C2DLineBaseSetSet class a collection of line sets. Used to store strands of lines from splitting up a polygon |
| C2DLineSet | C2DLineSet class a collection of lines |
| C2DPoint | Class which represents a cartesian point |
| C2DPointSet | Class which represents a set of points |
| C2DPolyArc | Class which represents a closed area with lines that are either straight or curved |
| C2DPolyArcSet | Class which represents a set of arcs |
| C2DPolyBase | A class which forms the basis of a 2 dimensional area or shape such as a polygon. Contains a closed set of lines of some sort, based on the abstract class C2DLineBase. Lines can be of mixed type |
| C2DPolyBaseSet | A collection of base polygons |
| C2DPolygon | Class which represents a polygon |
| C2DPolygonSet | A class which represents a set of 2D polygons |
| C2DRect | Class representing a rectangle |
| C2DRectSet | C2DRectSet class a collection of rects |
| C2DRoute | Class representing a set of connected points which do not necassarily join |
| C2DSegment | C2DSegment represents a segment which is part of a circle, sliced in 2 with a line |
| C2DTriangle | Class which represents a triangle |
| C2DVector | Class represents a 2D vector from the origin |
| C3DPoint | 3D Point class |
| CGeoLatLong | Class with data for latitude, and longitude. Functions to convert to Geocentric co-ordinates and 2D. Units in metres |
| CGeoLatLongHeight | Class with data for latitude, longitude and height. Functions to convert to Geocentric co-ordinates and 2D |
| CGrid | Class which is used to hold information about the grid |
| CIndexSet | Class which is used to store a set of indexes in a simple array |
| CInterval | A class for managing an interval [a, b] between 2 numbers |
| CMapProject | Class which is used to project a lat long object to a C2DPoint and vice versa |
| CRandomNumber | A class which provides a simple mechanism for generating random numbers |
| CSetData | Class to hold the index set data |
| CTravellingSalesman | A class which uses heuristic methods to help minimise routes between points. Used by the polygon for reordering points |