Geometry

This module implements the vector geometry support of TerraLib. More...

## Classes | |

class | te::gm::AbstractPoint |

A base abstract class for 0-dimensional geometric objects that represents a single location in coordinate space. More... | |

class | te::gm::CircularString |

CircularString is a curve with circular interpolation between points. More... | |

class | te::gm::CompoundCurve |

CompoundCurve is a curve that may have circular and linear segments. More... | |

struct | te::gm::Coord2D |

An utility struct for representing 2D coordinates. More... | |

class | te::gm::Curve |

Curve is an abstract class that represents 1-dimensional geometric objects stored as a sequence of coordinates. More... | |

class | te::gm::CurvePolygon |

CurvePolygon is a planar surface defined by 1 exterior boundary and 0 or more interior boundaries. More... | |

class | te::gm::Envelope |

An Envelope defines a 2D rectangular region. More... | |

class | te::gm::GeometricTransformation |

2D Geometric transformation base class. More... | |

class | te::gm::Geometry |

Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards. More... | |

class | te::gm::GeometryCollection |

It is a collection of other geometric objects. More... | |

class | te::gm::GeometryFactory |

This is the Geometry factory for TerraLib geometries. More... | |

class | GeometryFile |

A class that can parses a file with wkb encoded geometries. More... | |

class | te::gm::GeometryProperty |

Geometric property. More... | |

class | te::gm::Line |

A Line is LineString with 2 points. More... | |

class | te::gm::LinearRing |

A LinearRing is a LineString that is both closed and simple. More... | |

class | te::gm::LineString |

LineString is a curve with linear interpolation between points. More... | |

class | te::gm::MultiCurve |

MultiCurve is a class that represents a 1-dimensional GeometryCollection whose elements are curves. More... | |

class | te::gm::MultiLineString |

MultiLineString is a MultiCurve whose elements are LineStrings. More... | |

class | te::gm::MultiPoint |

MultiPoint is a GeometryCollection whose elements are restricted to points. More... | |

class | te::gm::MultiPolygon |

MultiPolygon is a MultiSurface whose elements are Polygons. More... | |

class | te::gm::MultiSurface |

MultiSurface is a class that represents a 2-dimensional GeometryCollection whose elements are surfaces. More... | |

class | te::gm::Point |

A point with x and y coordinate values. More... | |

class | te::gm::PointKd |

A k-dimensional point. More... | |

class | te::gm::PointM |

A point with an associated measure. More... | |

class | te::gm::PointZ |

A point with z-coordinate value. More... | |

class | te::gm::PointZM |

A point with a z-coordinate value and an associated measurement. More... | |

class | te::gm::Polygon |

Polygon is a subclass of CurvePolygon whose rings are defined by linear rings. More... | |

class | te::gm::PolyhedralSurface |

PolyhedralSurface is a contiguous collection of polygons, which share common boundary segments. More... | |

class | te::gm::Surface |

Surface is an abstract class that represents a 2-dimensional geometric objects. More... | |

class | te::gm::TIN |

TIN (triangulated irregular network) is a PolyhedralSurface consisting only of Triangle patches. More... | |

class | te::gm::Triangle |

Triangle is a polygon with 3 distinct, non-collinear vertices and no interior boundary. More... | |

class | te::gm::WKBReader |

A class that deserializes a geometry from a valid WKB. More... | |

class | te::gm::WKBWriter |

A class that serializes a geometry to the WKB format. More... | |

class | te::gm::WKTReader |

A class that deserializes a Geometry from a valid WKT. More... | |

class | te::gm::WKTWriter |

A class that serializes a geometry to the WKT format. More... | |

This module implements the vector geometry support of TerraLib.

The vector geometry module of TerraLib is OGC compliant. So, the majority documentation of this module was extracted from the Open Geospatial Consortium specification called Simple Feature Specification - Part 1: Common Architecture. This specification can be accessed at: http://www.opengeospatial.org/standards/sfa.

It is important to notice that this module refers to a geometry model to be used in main memory and it doesn't assume any kind of persistence or data storage management.

Basically, the geometry module is responsible for providing:

- The primitive geometric objects like points, lines and polygons;
- Homogeneous and heterogeneous collections of geometries;
- Curved geometries;
- Polyhedral surfaces and Triangular Irregular Networks (TIN);
- Spatial operations: topological relationship tests, metric, set operations;
- Serialization routines for common data formats: WKB, WKT, ...

The main classes/concepts in this module are listed here. The namespace associated to the Geometry module is te::gm. To know more about it, see the te::gm namespace documentation.