| 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 |