DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(mysql.info) gis-geometry-class-hierarchy

Info Catalog (mysql.info) opengis-geometry-model (mysql.info) opengis-geometry-model (mysql.info) gis-class-geometry
 
 16.2.1 The Geometry Class Hierarchy
 -----------------------------------
 
 The geometry classes define a hierarchy as follows:
 
    * `Geometry' (non-instantiable)
 
         * `Point' (instantiable)
 
         * `Curve' (non-instantiable)
 
              * `LineString' (instantiable)
 
                   * `Line'
 
                   * `LinearRing'
 
         * `Surface' (non-instantiable)
 
              * `Polygon' (instantiable)
 
         * `GeometryCollection' (instantiable)
 
              * `MultiPoint' (instantiable)
 
              * `MultiCurve' (non-instantiable)
 
                   * `MultiLineString' (instantiable)
 
              * `MultiSurface' (non-instantiable)
 
                   * `MultiPolygon' (instantiable)
 
 It is not possible to create objects in non-instantiable classes. It is
 possible to create objects in instantiable classes. All classes have
 properties, and instantiable classes may also have assertions (rules
 that define valid class instances).
 
 `Geometry' is the base class. It is an abstract class. The instantiable
 subclasses of `Geometry' are restricted to zero-, one-, and
 two-dimensional geometric objects that exist in two-dimensional
 coordinate space. All instantiable geometry classes are defined so that
 valid instances of a geometry class are topologically closed (that is,
 all defined geometries include their boundary).
 
 The base `Geometry' class has subclasses for `Point', `Curve',
 `Surface', and `GeometryCollection':
 
    * `Point' represents zero-dimensional objects.
 
    * `Curve' represents one-dimensional objects, and has subclass
      `LineString', with sub-subclasses `Line' and `LinearRing'.
 
    * `Surface' is designed for two-dimensional objects and has subclass
      `Polygon'.
 
    * `GeometryCollection' has specialized zero-, one-, and
      two-dimensional collection classes named `MultiPoint',
      `MultiLineString', and `MultiPolygon' for modeling geometries
      corresponding to collections of `Points', `LineStrings', and
      `Polygons', respectively.  `MultiCurve' and `MultiSurface' are
      introduced as abstract superclasses that generalize the collection
      interfaces to handle `Curves' and `Surfaces'.
 
 `Geometry', `Curve', `Surface', `MultiCurve', and `MultiSurface' are
 defined as non-instantiable classes. They define a common set of
 methods for their subclasses and are included for extensibility.
 
 `Point', `LineString', `Polygon', `GeometryCollection', `MultiPoint',
 `MultiLineString', and `MultiPolygon' are instantiable classes.
 
Info Catalog (mysql.info) opengis-geometry-model (mysql.info) opengis-geometry-model (mysql.info) gis-class-geometry
automatically generated byinfo2html