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

Detailed Description

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