PolyhedralSurface is a contiguous collection of polygons, which share common boundary segments. More...
#include <PolyhedralSurface.h>
Public Types | |
| typedef void | ReturnType |
| typedef Visitor | VisitorType |
Public Member Functions | |
| virtual ReturnType | accept (VisitorType &guest) const =0 |
| It call the visit method from the guest object. More... | |
Initializer methods on geometric objects | |
Methods for initializing a geometric object. | |
| PolyhedralSurface (std::size_t nPolygons, GeomType t, int srid=0, Envelope *mbr=0) | |
| It initializes the Geometry with the specified spatial reference system id and envelope. More... | |
| PolyhedralSurface (const PolyhedralSurface &rhs) | |
| Copy constructor. More... | |
| virtual | ~PolyhedralSurface () |
| Virtual destructor. More... | |
| virtual PolyhedralSurface & | operator= (const PolyhedralSurface &rhs) |
| Assignment operator. More... | |
Re-Implementation from AbstractData | |
Methods re-Implementated from AbstractData. | |
| virtual te::dt::AbstractData * | clone () const |
| It clones the linestring. More... | |
PolyhedralSurface Specific Methods | |
Specific methods for a PolyhedralSurface. | |
| std::size_t | getNumPatches () const |
| It returns the number of including polygons. More... | |
| void | setNumPatches (std::size_t size) |
| It sets the number of including polygons. More... | |
| Polygon * | getPatchN (std::size_t i) const |
| It returns a polygon in this surface, the order is arbitrary. More... | |
| void | setPatchN (std::size_t i, Polygon *p) |
| It sets the informed position polygon to the new one. More... | |
| MultiPolygon * | getBoundingPolygons (const Polygon *p) const |
| It returns the collection of polygons in this surface that bounds the given polygon "p" for any polygon "p" in the surface. More... | |
| bool | isClosed () const |
| It returns true if the polygon closes on itself, and thus has no boundary and encloses a solid. More... | |
Re-Implmentation of methods from surface class | |
Re-Implmentation of basic methods from surface class. | |
| double | getArea () const |
| It returns the area of this surface, as measured in the spatial reference system of this surface. More... | |
| Point * | getCentroid () const |
| It returns the mathematical centroid for this surface as a point. More... | |
| Coord2D * | getCentroidCoord () const |
| It returns the mathematical centroid for this surface as a coordinate. More... | |
| Point * | getPointOnSurface () const |
| It returns a point guaranteed to be on this surface. More... | |
| Coord2D * | getCoordOnSurface () const |
| It returns a coordinate guaranteed to be on this surface. More... | |
| double | getPerimeter () const |
| It returns the length of the boundary for the surface. More... | |
Re-Implmentation of methods from Geometry class | |
Re-Implmentation of basic methods from Geometry class. | |
| virtual const std::string & | getGeometryType () const throw () |
| The name of the geometry subtype for PolyhedralSurface is: PolyhedralSurface. More... | |
| void | setSRID (int srid) throw () |
| It sets the Spatial Reference System ID of the Geometry and all its parts if it is a GeometryCollection (or a Multi). More... | |
| void | transform (int srid) throw (te::common::Exception) |
| It will transform the coordinates of the Geometry to the new one. More... | |
| void | computeMBR (bool cascade) const throw () |
| It computes the minimum bounding rectangle for the Geometry. More... | |
| std::size_t | getNPoints () const throw () |
| it returns the number of points (vertexes) in the geometry. More... | |
Re-Implmentation of methods from Geometry class | |
Re-Implmentation of basic methods from Geometry class. | |
| Dimensionality | getDimension () const throw () |
| Surfaces are 2-dimensional objects. More... | |
Basic Geometry Methods | |
Basic methods on geometric objects. | |
| int | getCoordinateDimension () const _NOEXCEPT_OP(true) |
| It returns the number of measurements or axes needed to describe a position in a coordinate system. More... | |
| GeomType | getGeomTypeId () const _NOEXCEPT_OP(true) |
| It returns the geometry subclass type identifier. More... | |
| virtual const std::string | get2DGeometryType () const _NOEXCEPT_OP(true) |
| It returns the name of 2D geometry subclass. More... | |
| virtual GeomType | get2DGeomTypeId () const _NOEXCEPT_OP(true) |
| It returns the 2D geometry subclass type identifier. More... | |
| int | getSRID () const _NOEXCEPT_OP(true) |
| It returns the Spatial Reference System ID associated to this geometric object. More... | |
| Geometry * | getEnvelope () const _NOEXCEPT_OP(true) |
| It returns the minimum bounding rectangle (MBR) for the geometry. More... | |
| const Envelope * | getMBR () const _NOEXCEPT_OP(true) |
| It returns the minimum bounding rectangle for the geometry in an internal representation. More... | |
| std::string | asText () const _NOEXCEPT_OP(true) |
| It returns an string with the Well-Known Text Representation for the geometry. More... | |
| char * | asBinary (std::size_t &size) const _NOEXCEPT_OP(false) |
| It serializes the geometric object to a Well-known Binary Representation (WKB). More... | |
| std::size_t | getWkbSize () const _NOEXCEPT_OP(true) |
| It returns the size required by a WKB representation for this geometric object. More... | |
| void | getWkb (char *wkb, te::common::MachineByteOrder byteOrder) const _NOEXCEPT_OP(false) |
| It serializes the geometry to a WKB representation into the specified buffer. More... | |
| virtual bool | isEmpty () const _NOEXCEPT_OP(false) |
| It returns true if this geometric object is the empty Geometry. More... | |
| virtual bool | isSimple () const _NOEXCEPT_OP(false) |
| It returns true if this geometric object has no anomalous points, such as self intersection or self tangency. More... | |
| virtual bool | isValid () const _NOEXCEPT_OP(false) |
| It tells if the geometry is well formed. More... | |
| bool | is3D () const _NOEXCEPT_OP(true) |
| It returns true if this geometric object has z coordinate values. More... | |
| bool | isMeasured () const _NOEXCEPT_OP(true) |
| It returns true if this geometric object has m coordinate values. More... | |
| bool | isCollection () const _NOEXCEPT_OP(true) |
| It returns true if this geometric object is a collection. More... | |
| virtual Geometry * | getBoundary () const _NOEXCEPT_OP(false) |
| It returns the geometry boundary. More... | |
Spatial Relations | |
Methods for testing spatial relations between geometric objects. Please, see OGC specification for a in depth definition of each spatial operation. | |
| virtual bool | equals (const Geometry *const rhs, const bool exact=false) const _NOEXCEPT_OP(false) |
| It returns true if the geometry object is spatially equal to rhs geometry. More... | |
| virtual bool | disjoint (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if the geometry object is spatially disjoint from rhs geometry. More... | |
| virtual bool | intersects (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if the geometry object spatially intersects rhs geometry. More... | |
| virtual bool | touches (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if the geometry object spatially touches rhs geometry. More... | |
| virtual bool | crosses (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if the geometry object spatially crosses rhs geometry. More... | |
| virtual bool | within (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if the geometry object is spatially within rhs geometry. More... | |
| virtual bool | contains (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if this geometry object spatially contains rhs geometry. More... | |
| virtual bool | overlaps (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if this geometry object spatially overlaps rhs geometry. More... | |
| virtual bool | relate (const Geometry *const rhs, const std::string &matrix) const _NOEXCEPT_OP(false) |
| It returns true if this geometry object is spatially related to rhs geometry according to the pattern expressed by the intersection matrix. More... | |
| virtual std::string | relate (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns the spatial relation between this geometry object and the rhs geometry. More... | |
| virtual bool | covers (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if this geometry object spatially covers the rhs geometry. More... | |
| virtual bool | coveredBy (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns true if this geometry object is spatially covered by rhs geometry. More... | |
| virtual Geometry * | locateAlong (const double &mValue) const _NOEXCEPT_OP(false) |
| It returns a derived GeometryCollection value according to the specified coordinate value. More... | |
| virtual Geometry * | locateBetween (const double &mStart, const double &mEnd) const _NOEXCEPT_OP(false) |
| It returns a derived geometry collection value according to the range of coordinate values inclusively. More... | |
Spatial Analysis | |
Methods that support spatial analysis. | |
| virtual double | distance (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns the shortest distance between any two points in the two geometry objects. More... | |
| virtual Geometry * | buffer (const double &distance) const _NOEXCEPT_OP(false) |
| This method calculates the buffer of a geometry. More... | |
| virtual Geometry * | buffer (const double &distance, int quadrantSegments) const _NOEXCEPT_OP(false) |
| This method calculates the buffer of a geometry. More... | |
| virtual Geometry * | buffer (const double &distance, int quadrantSegments, BufferCapStyle endCapStyle) const _NOEXCEPT_OP(false) |
| This method calculates the buffer of a geometry. More... | |
| virtual Geometry * | convexHull () const _NOEXCEPT_OP(false) |
| This method calculates the Convex Hull of a geometry. More... | |
| virtual Geometry * | intersection (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns a geometric object that represents the point set intersection with another geometry. More... | |
| virtual Geometry * | Union (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns a geometric object that represents the point set union with another geometry. More... | |
| virtual Geometry * | difference (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns a geometric object that represents the point set difference with another geometry. More... | |
| virtual Geometry * | symDifference (const Geometry *const rhs) const _NOEXCEPT_OP(false) |
| It returns a geometric object that represents the point set symetric difference with another geometry. More... | |
| virtual bool | dWithin (const Geometry *const rhs, const double &distance) const _NOEXCEPT_OP(false) |
| It returns true if the geometries are within the specified distance. More... | |
AbstractData Re-implementation | |
Methods re-implemneted from AbstractData. | |
| int | getTypeCode () const |
| It returns the data type code associated to the data value. More... | |
| std::string | toString () const |
| It returns the data value in a WKT representation. More... | |
Static Public Member Functions | |
Auxiliary Methods | |
Auxiliary Methods. | |
| static GeomType | getGeomTypeId (const std::string >ype) |
| It returns the TerraLib geometry type id given a type string (the type string must be in capital letters). More... | |
| static std::string | getGeomTypeString (const int &gId) |
| It returns the TerraLib geometry type string given a type id. More... | |
| static bool | isGeomType (const std::string &stype) |
| It tells if the given string is a geometry data type. More... | |
| static void | loadGeomTypeId () |
| It loads the internal MAP of geometry type names to geometry type ids. More... | |
Protected Attributes | |
| GeomType | m_gType |
| Internal geometry type. More... | |
| Envelope * | m_mbr |
| The geometry minimum bounding rectangle. More... | |
| std::vector< Polygon * > | m_polygons |
| An array with the polygon list. More... | |
| int | m_srid |
| The Spatial Reference System code associated to the Geometry. More... | |
Static Protected Attributes | |
| static std::map< std::string, GeomType > | sm_geomTypeMap |
| A set of geometry type names (in UPPER CASE). More... | |
Static Private Attributes | |
| static const std::string | sm_typeName |
| Geometry type name for PolyhedralSurface. More... | |
PolyhedralSurface is a contiguous collection of polygons, which share common boundary segments.
Definition at line 57 of file PolyhedralSurface.h.
|
inherited |
Definition at line 58 of file BaseVisitable.h.
|
inherited |
Definition at line 57 of file BaseVisitable.h.
| te::gm::PolyhedralSurface::PolyhedralSurface | ( | std::size_t | nPolygons, |
| GeomType | t, | ||
| int | srid = 0, |
||
| Envelope * | mbr = 0 |
||
| ) |
It initializes the Geometry with the specified spatial reference system id and envelope.
| nPolygons | The number of polygons forming the polyhedral. |
| t | The internal type of the Geometry. |
| srid | The Spatial Reference System ID associated to the Geometry. |
| mbr | The minimum bounding rectangle of this geometry (i.e., its envelope). It may be a NULL value. |
Definition at line 37 of file PolyhedralSurface.cpp.
Referenced by clone().
| te::gm::PolyhedralSurface::PolyhedralSurface | ( | const PolyhedralSurface & | rhs | ) |
Copy constructor.
| rhs | The other geometry. |
Definition at line 43 of file PolyhedralSurface.cpp.
References te::common::Clone(), and m_polygons.
|
virtual |
Virtual destructor.
Definition at line 49 of file PolyhedralSurface.cpp.
References te::common::FreeContents(), and m_polygons.
|
pure virtualinherited |
It call the visit method from the guest object.
| guest | The guest or visitor. |
|
inherited |
It serializes the geometric object to a Well-known Binary Representation (WKB).
| size | The size in bytes of the returned WKB. |
| Exception | It will throw an exception if the operation could not be performed. |
Definition at line 123 of file geometry/Geometry.cpp.
References te::gm::Geometry::getWkb(), te::gm::WKBSize::size(), and te::common::Globals::sm_machineByteOrder.
Referenced by Geometry_AsBinary(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), and TsGeometry::tcCreatePointZM().
|
inherited |
It returns an string with the Well-Known Text Representation for the geometry.
Definition at line 112 of file geometry/Geometry.cpp.
References te::gm::WKTWriter::write().
Referenced by ConvertCoordinates(), createGeometries(), Geometry_AsText(), readWkts(), RetrieveUsingSpatialFilter(), setOperationsExamples(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsGeometry::tcCreatePolygon(), and wkbConversionExamples().
|
virtualinherited |
This method calculates the buffer of a geometry.
| distance | Distance value. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 621 of file geometry/Geometry.cpp.
References te::gm::CapRoundType, te::gm::Geometry::distance(), and TE_GEOS_DEFAULT_QUADRANT_SEGMENTS.
Referenced by te::gm::Geometry::buffer(), te::gm::FixGeometryTopology::fixSelfIntersection(), and te::vp::BufferMemory::setBuffer().
|
virtualinherited |
This method calculates the buffer of a geometry.
| distance | Distance value. |
| quadrantSegments | A specified number of segments used to approximate the curves. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 630 of file geometry/Geometry.cpp.
References te::gm::Geometry::buffer(), te::gm::CapRoundType, and te::gm::Geometry::distance().
|
virtualinherited |
This method calculates the buffer of a geometry.
As in GEOS, the quadrantSegments argument allows controlling the accuracy of the approximation by specifying the number of line segments used to represent a quadrant of a circle.
| distance | Distance value. |
| quadrantSegments | A specified number of segments used to approximate the curves. |
| endCapStyle | It specifies the shape used at the ends of linestrings. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 635 of file geometry/Geometry.cpp.
References te::gm::Geometry::distance(), te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
|
virtual |
It clones the linestring.
Implements te::dt::AbstractData.
Definition at line 67 of file PolyhedralSurface.cpp.
References PolyhedralSurface().
|
virtual | ||||||||||||||
It computes the minimum bounding rectangle for the Geometry.
| cascade | If true, it will update the MBR of its parts. |
Implements te::gm::Geometry.
Definition at line 142 of file PolyhedralSurface.cpp.
References te::gm::Geometry::getMBR(), te::gm::Geometry::m_mbr, m_polygons, te::gm::Envelope::makeInvalid(), and te::gm::Envelope::Union().
Referenced by transform().
It returns true if this geometry object spatially contains rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 436 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Contains(), te::edit::Repository::getFeature(), te::attributefill::VectorToVectorMemory::getMinimumDistanceFromCentroid(), te::edit::VertexTool::mouseMoveEvent(), te::gm::SatisfySpatialRelation(), spatialRelation(), and te::edit::DeletePartTool::storeFeature().
|
virtualinherited |
This method calculates the Convex Hull of a geometry.
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 659 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_ConvexHull(), te::gm::GTFilter::getPt1ConvexHullArea(), and te::rp::GetTPConvexHullArea().
It returns true if this geometry object is spatially covered by rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 566 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_CoveredBy(), te::gm::SatisfySpatialRelation(), and spatialRelation().
It returns true if this geometry object spatially covers the rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 541 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::edit::SubtractAreaTool::buildPolygon(), Geometry_Covers(), te::gm::SatisfySpatialRelation(), and spatialRelation().
It returns true if the geometry object spatially crosses rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 386 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Crosses(), te::edit::Repository::getFeature(), te::gm::SatisfySpatialRelation(), spatialRelation(), and te::edit::DeletePartTool::storeFeature().
|
virtualinherited |
It returns a geometric object that represents the point set difference with another geometry.
| rhs | Another geometry whose difference with this geometry will be calculated. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 739 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::edit::SubtractAreaTool::buildPolygon(), difference(), te::vp::BufferMemory::dissolveMemory(), te::vp::BufferQuery::dissolveQuery(), Geometry_Difference(), and te::vp::BufferMemory::setBuffer().
It returns true if the geometry object is spatially disjoint from rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 310 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Disjoint(), te::gm::SatisfySpatialRelation(), spatialRelation(), te::edit::MergeGeometriesTool::spatialRelationDisjoint(), GAP::step3(), GAP::step4(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
virtualinherited |
It returns the shortest distance between any two points in the two geometry objects.
| rhs | The other geometry. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 596 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::gm::AdjustSegment(), BOOST_AUTO_TEST_CASE(), te::gm::Geometry::buffer(), te::sa::CalculateDistance(), te::sa::GPMConstructorAdjacencyStrategy::constructStrategy(), te::sa::GPMConstructorDistanceStrategy::constructStrategy(), te::gm::Geometry::dWithin(), te::st::IDWInterpolator::estimate(), Geometry_Distance(), te::gm::GetIntersectionPointsByOperators(), and te::gm::DistanceOrderFunctor::operator()().
|
virtualinherited |
It returns true if the geometries are within the specified distance.
| rhs | The other geometry whose symetric difference with this geometry will be calculated. |
| distance | The distance. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 797 of file geometry/Geometry.cpp.
References te::gm::Geometry::distance(), te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_DWithin().
|
virtualinherited |
It returns true if the geometry object is spatially equal to rhs geometry.
| rhs | The another geometry to be compared. |
| exact | If true checks if this geometric object has the same vertexes in the same order of rhs geometry. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 282 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Equals(), te::gm::SatisfySpatialRelation(), spatialRelation(), TsGEOSWriterReader::tcCreateGeomCollectionFromWKTAndApplyGEOSTests(), TsWKBReader::tcCreateGeometriesAndApplyReadTests(), TsGEOSWriterReader::tcCreateGeometriesAndApplyReadTests(), TsWKBReader::tcCreateGeomFromWKTAndApplyReadTests(), TsGEOSWriterReader::tcCreateLinesFromWKTAndApplyGEOSTests(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGEOSWriterReader::tcCreatePointsFromWKTAndApplyGEOSTests(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsGeometry::tcCreatePolygon(), TsGEOSWriterReader::tcCreatePolygonFromWKTAndApplyGEOSTests(), TsArray::tcGetData(), TsArray::tcOperatorBraket(), and wkbConversionExamples().
|
virtualinherited |
It returns the name of 2D geometry subclass.
The name of the 2D geometry subclass may be one of the following:
Definition at line 834 of file geometry/Geometry.cpp.
References te::gm::CircularStringMType, te::gm::CircularStringType, te::gm::CircularStringZMType, te::gm::CircularStringZType, te::gm::CompoundCurveMType, te::gm::CompoundCurveType, te::gm::CompoundCurveZMType, te::gm::CompoundCurveZType, te::gm::CurvePolygonMType, te::gm::CurvePolygonType, te::gm::CurvePolygonZMType, te::gm::CurvePolygonZType, te::gm::GeometryCollectionMType, te::gm::GeometryCollectionType, te::gm::GeometryCollectionZMType, te::gm::GeometryCollectionZType, te::gm::GeometryMType, te::gm::GeometryType, te::gm::GeometryZMType, te::gm::GeometryZType, te::gm::LineStringMType, te::gm::LineStringType, te::gm::LineStringZMType, te::gm::LineStringZType, te::gm::Geometry::m_gType, te::gm::MultiLineStringMType, te::gm::MultiLineStringType, te::gm::MultiLineStringZMType, te::gm::MultiLineStringZType, te::gm::MultiPointMType, te::gm::MultiPointType, te::gm::MultiPointZMType, te::gm::MultiPointZType, te::gm::MultiPolygonMType, te::gm::MultiPolygonType, te::gm::MultiPolygonZMType, te::gm::MultiPolygonZType, te::gm::MultiSurfaceMType, te::gm::MultiSurfaceType, te::gm::MultiSurfaceZMType, te::gm::MultiSurfaceZType, te::gm::PointMType, te::gm::PointType, te::gm::PointZMType, te::gm::PointZType, te::gm::PolygonMType, te::gm::PolygonType, te::gm::PolygonZMType, and te::gm::PolygonZType.
|
virtualinherited |
It returns the 2D geometry subclass type identifier.
Definition at line 915 of file geometry/Geometry.cpp.
References te::gm::CircularStringMType, te::gm::CircularStringType, te::gm::CircularStringZMType, te::gm::CircularStringZType, te::gm::CompoundCurveMType, te::gm::CompoundCurveType, te::gm::CompoundCurveZMType, te::gm::CompoundCurveZType, te::gm::CurvePolygonMType, te::gm::CurvePolygonType, te::gm::CurvePolygonZMType, te::gm::CurvePolygonZType, te::gm::GeometryCollectionMType, te::gm::GeometryCollectionType, te::gm::GeometryCollectionZMType, te::gm::GeometryCollectionZType, te::gm::GeometryMType, te::gm::GeometryType, te::gm::GeometryZMType, te::gm::GeometryZType, te::gm::LineStringMType, te::gm::LineStringType, te::gm::LineStringZMType, te::gm::LineStringZType, te::gm::Geometry::m_gType, te::gm::MultiLineStringMType, te::gm::MultiLineStringType, te::gm::MultiLineStringZMType, te::gm::MultiLineStringZType, te::gm::MultiPointMType, te::gm::MultiPointType, te::gm::MultiPointZMType, te::gm::MultiPointZType, te::gm::MultiPolygonMType, te::gm::MultiPolygonType, te::gm::MultiPolygonZMType, te::gm::MultiPolygonZType, te::gm::MultiSurfaceMType, te::gm::MultiSurfaceType, te::gm::MultiSurfaceZMType, te::gm::MultiSurfaceZType, te::gm::PointMType, te::gm::PointType, te::gm::PointZMType, te::gm::PointZType, te::gm::PolygonMType, te::gm::PolygonType, te::gm::PolygonZMType, te::gm::PolygonZType, and te::gm::UnknownGeometryType.
Referenced by te::gm::Geometry::isCollection().
|
inlinevirtual |
It returns the area of this surface, as measured in the spatial reference system of this surface.
Implements te::gm::Surface.
Definition at line 207 of file PolyhedralSurface.h.
|
virtualinherited |
It returns the geometry boundary.
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 237 of file geometry/Geometry.cpp.
References b, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::ag::Canvas::draw(), Geometry_GetBoundary(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
| te::gm::MultiPolygon * te::gm::PolyhedralSurface::getBoundingPolygons | ( | const Polygon * | p | ) | const |
It returns the collection of polygons in this surface that bounds the given polygon "p" for any polygon "p" in the surface.
| p | The bounding Polygon. |
Definition at line 97 of file PolyhedralSurface.cpp.
|
inlinevirtual |
It returns the mathematical centroid for this surface as a point.
Implements te::gm::Surface.
Definition at line 221 of file PolyhedralSurface.h.
|
inlinevirtual |
It returns the mathematical centroid for this surface as a coordinate.
Implements te::gm::Surface.
Definition at line 237 of file PolyhedralSurface.h.
|
inherited |
It returns the number of measurements or axes needed to describe a position in a coordinate system.
It returns:
Definition at line 94 of file geometry/Geometry.cpp.
References te::gm::GetCoordDimension(), and te::gm::Geometry::m_gType.
Referenced by Geometry_GetCoordinateDimension(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsGeometry::tcCreatePolygon(), TsGeometry::tcMisc(), and te::gm::WKBSize::visit().
|
inlinevirtual |
It returns a coordinate guaranteed to be on this surface.
Implements te::gm::Surface.
Definition at line 263 of file PolyhedralSurface.h.
|
virtualinherited | |||||||||||||
Surfaces are 2-dimensional objects.
Implements te::gm::Geometry.
Definition at line 60 of file geometry/Surface.cpp.
References te::gm::A.
Referenced by TsGeometry::tcCreatePolygon(), and TsGeometry::tcMisc().
|
inherited |
It returns the minimum bounding rectangle (MBR) for the geometry.
As one can notice, the mbr is returned as a geometry, actually a polygon defined by the corner points of the bounding box [(MINX, MINY), (MAXX, MINY), (MAXX, MAXY), (MINX, MAXY), (MINX, MINY)].
Definition at line 99 of file geometry/Geometry.cpp.
References te::gm::GetGeomFromEnvelope(), te::gm::Geometry::getMBR(), and te::gm::Geometry::m_srid.
Referenced by Geometry_GetEnvelope(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
virtual | |||||||||||||
The name of the geometry subtype for PolyhedralSurface is: PolyhedralSurface.
Implements te::gm::Geometry.
Reimplemented in te::gm::TIN.
Definition at line 107 of file PolyhedralSurface.cpp.
References sm_typeName.
Referenced by TsGeometry::tcMisc().
|
inlineinherited |
It returns the geometry subclass type identifier.
Definition at line 180 of file geometry/Geometry.h.
References _NOEXCEPT_OP.
Referenced by terralib4::Transactor::addProperty(), te::map::QueryLayerRenderer::buildChart(), te::map::AbstractLayerRenderer::buildChart(), te::vp::GeometricOpMemory::CalculateTabularOp(), te::gm::FixGeometryTopology::closeGeometryRing(), te::edit::Convert2LayerGeomType(), te::graph::RAGGraphBuilder::createVertexObjects(), te::graph::FlowGraphBuilder::createVertexObjects(), te::rst::CropRaster(), te::edit::Renderer::draw(), te::qt::widgets::Canvas::draw(), te::ag::Canvas::draw(), te::qt::widgets::DefaultFeatureInfoMaker::drawGeometry(), te::qt::widgets::ClippingWizard::executeLayerClipping(), te::qt::widgets::ClippingWizard::executeLayerClippingAttribute(), te::vp::ExtractGeometry(), te::edit::FindSegment(), te::gm::FixGeometryTopology::fixSelfIntersection(), Geometry_GetGeomTypeId(), te::v8::jsi::Geometry_Make(), Geometry_StaticGetGeomTypeId(), te::attributefill::VectorToVectorMemory::getAllPointsOfGeometry(), te::sa::GetArea(), te::attributefill::VectorToVectorMemory::getArea(), te::gm::GetAsMultiLineStringVector(), te::edit::GetCoordinates(), te::pgis::Transactor::getGeometryInfo(), te::vp::GetGeometryUnion(), te::gm::GetIntersectionLine(), te::vp::PolygonToLineMemory::getLines(), te::edit::GetLines(), te::addressgeocoding::AddressGeocodingOp::getLines(), te::gm::GetMultiLineStringType(), te::vp::LineToPolygonMemory::getPolygons(), te::qt::widgets::FilterDialogForm::getRasterFromROI(), te::qt::widgets::ColorTransformDialog::getRasterFromROI(), te::attributefill::RasterToVector::getTexture(), te::gm::Geometry::isGeomType(), te::edit::MoveGeometry(), te::edit::Renderer::prepare(), te::gm::PrepareGeometriesToIntersection(), te::serialize::xml::Read(), te::vp::Union::setGeomAsMulti(), te::vp::Difference::setGeomAsMulti(), te::vp::SetGeomAsMulti(), te::vp::MultipartToSinglepart::single2multi(), GAP::step3(), te::edit::DeletePartTool::storeFeature(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsGeometry::tcCreatePolygon(), TsGeometry::tcMisc(), te::gm::WKBSize::visit(), te::gm::WKBWriter::visit(), te::pgis::EWKBWriter::visit(), te::gm::WKTWriter::visit(), Write2EWKB(), and te::gm::Write2WKB().
|
staticinherited |
It returns the TerraLib geometry type id given a type string (the type string must be in capital letters).
| gtype | The geometry type name. |
Definition at line 824 of file geometry/Geometry.cpp.
References te::gm::Geometry::sm_geomTypeMap, and te::gm::UnknownGeometryType.
|
staticinherited |
It returns the TerraLib geometry type string given a type id.
| gId | The geometry type id. |
Definition at line 996 of file geometry/Geometry.cpp.
References te::gm::Geometry::sm_geomTypeMap.
Referenced by te::vp::BufferDialog::onLayerComboBoxChanged(), and te::qt::widgets::LayerPropertiesInfo::setLayerVecProperties().
|
inherited |
It returns the minimum bounding rectangle for the geometry in an internal representation.
The mbr can be constructed when reading a geometry from a database or it can be computed internally. So, if the mbr is not already set it will compute it just when this method is called. Successive calls to this method will not compute the mbr anymore.
Definition at line 104 of file geometry/Geometry.cpp.
References te::gm::Geometry::computeMBR(), and te::gm::Geometry::m_mbr.
Referenced by AdaptativeKdTree(), te::map::QueryLayerRenderer::buildChart(), te::map::AbstractLayerRenderer::buildChart(), te::edit::Repository::buildIndex(), te::mnt::Tin::BuildTriangle(), computeDataSetEnvelope(), te::da::SpatialQueryProcessor::computeEnvelope(), te::gm::GeometryCollection::computeMBR(), computeMBR(), te::mnt::CreateIsolines::connectLines(), te::graph::RAGGraphBuilder::createEdgeObjects(), te::rst::CropRaster(), DataSetAdapterLayerReader(), te::vp::BufferMemory::dissolveMemory(), te::vp::BufferQuery::dissolveQuery(), te::qt::widgets::Canvas::draw(), te::qt::widgets::Measure::drawPolygon(), te::rp::ClassifierDummyStrategy::execute(), te::rp::TiePointsMosaic::execute(), te::qt::widgets::ClippingWizard::executeLayerClipping(), te::stmem::DataSet::filter(), Geometry_GetMBR(), te::sqlite::DataSourceTransactor::getDataSet(), te::wcs::Transactor::getDataSet(), te::wms::Transactor::getDataSet(), te::ws::ogc::wcs::da::Transactor::getDataSet(), te::gm::Geometry::getEnvelope(), te::gm::GetGeometryUnion(), te::qt::widgets::ClippingWizardPage::getLayerClippingAttribute(), te::attributefill::VectorToVectorMemory::getMinimumDistanceFromCentroid(), te::da::SpatialQueryProcessor::getOIDSet(), te::st::Trajectory::getPatches(), te::sa::SamplePointsGeneratorStratified::getPointInGeometry(), te::qt::widgets::FilterDialogForm::getRasterFromROI(), te::qt::widgets::ColorTransformDialog::getRasterFromROI(), te::rst::TileIndexer::getTileIndex(), IndexPointUsingRTree(), te::mnt::TINGeneration::InsertNode(), te::qt::widgets::MixtureModelWizardPage::loadMixtureModelComponents(), Mask(), te::edit::DeleteGeometryByAreaTool::mouseReleaseEvent(), te::gm::PrepareGeometriesToIntersection(), te::mnt::Profile::runIsolinesProfile(), te::mnt::Profile::runTINProfile(), GAP::step4(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsGeometry::tcCreatePolygon(), TsRTree::tcRTreeGradeInts(), TsRTree::tcRTreeInts(), TsRTree::tcRTreePointers(), TsRTree::tcRTreeUnsignedInts(), te::rst::TileIndexer::TileIndexer(), te::gm::Envelope::transform(), and GAP::verifyIntersections().
|
virtual | |||||||||||||
it returns the number of points (vertexes) in the geometry.
Implements te::gm::Geometry.
Definition at line 168 of file PolyhedralSurface.cpp.
References m_polygons.
|
inline |
It returns the number of including polygons.
Definition at line 133 of file PolyhedralSurface.h.
References p.
Referenced by te::gm::WKBSize::visit(), and te::gm::WKBWriter::visit().
| te::gm::Polygon * te::gm::PolyhedralSurface::getPatchN | ( | std::size_t | i | ) | const |
It returns a polygon in this surface, the order is arbitrary.
| i | The index of the polygon component. |
Definition at line 84 of file PolyhedralSurface.cpp.
References m_polygons.
Referenced by te::gm::WKBSize::visit(), and te::gm::WKBWriter::visit().
|
virtual |
It returns the length of the boundary for the surface.
Implements te::gm::Surface.
Definition at line 102 of file PolyhedralSurface.cpp.
|
inlinevirtual |
It returns a point guaranteed to be on this surface.
Implements te::gm::Surface.
Definition at line 249 of file PolyhedralSurface.h.
|
inlineinherited |
It returns the Spatial Reference System ID associated to this geometric object.
This value can be used to identify the associated Spatial Reference System.
Definition at line 240 of file geometry/Geometry.h.
References _NOEXCEPT_OP.
Referenced by te::gm::CurvePolygon::add(), te::gm::GeometryCollection::add(), te::gm::AddIntersectionPoints(), te::qt::widgets::AnimationItem::adjustDataToAnimationTemporalExtent(), te::gm::AdjustSegment(), te::edit::SubtractAreaTool::buildPolygon(), te::edit::AggregateAreaTool::buildPolygon(), te::edit::DeleteGeometryByAreaTool::buildPolygon(), te::sa::CalculateDistance(), CalculateHorizontalLines(), CalculateVerticalLines(), te::gm::CascadedPolygonUnion(), te::ado::Convert2Ado(), te::gpkg::Convert2OGR(), te::ogr::Convert2OGR(), te::edit::Renderer::draw(), te::qt::widgets::ClippingWizardPage::drawGeom(), te::qt::widgets::MixtureModelWizardPage::drawMarks(), te::qt::widgets::ROIManagerWidget::drawROISet(), te::edit::Renderer::drawVertexes(), te::edit::FindSegment(), te::gm::FixGeometryTopology::fixSelfIntersection(), Geometry_GetSRID(), te::gm::GetAsMultiLineStringVector(), te::qt::widgets::ClassifierWizardPage::getEDSamples(), te::edit::Repository::getFeature(), te::vp::GetGeometryUnion(), te::gm::GetIntersectionLine(), te::gm::GetIntersectionPointsByOperators(), te::attributefill::VectorToVectorMemory::getKDtree(), te::qt::widgets::ClippingWizardPage::getLayerClippingAttribute(), te::qt::widgets::ClassifierWizardPage::getMAPSamples(), te::attributefill::VectorToVectorMemory::getMinimumDistanceFromCentroid(), te::da::SpatialQueryProcessor::getOIDSet(), te::vp::LineToPolygonMemory::getPolygons(), te::qt::widgets::ClassifierWizardPage::getSAMSamples(), te::rst::PolygonIterator< T >::getScanLineIntersectionRanges(), te::rst::PolygonIterator< T >::initialize(), te::vp::LineToPolygonMemory::line2Polygon(), te::rst::LineIterator< T >::LineIterator(), te::graph::BoxLoaderStrategy::loadDataByEdgeId(), te::graph::BoxLoaderStrategy::loadDataByVertexId(), LoadIsolines(), GAP::LoadPolygons(), te::gm::Multi2Single(), te::gm::MultiLineToDefinedType(), te::gm::PerpendicularDistance(), te::edit::VertexTool::pickFeature(), te::mnt::SplineInterpolationGrass::pointListSimplify(), te::mnt::pointListSimplify(), te::vp::PolygonToLineMemory::polygon2Line(), GAP::Polygon2Lines(), GAP::Polygon2RTree(), te::gm::Polygonizer(), te::gm::PrepareGeometriesToIntersection(), te::gm::CurvePolygon::push_back(), te::mnt::TINGeneration::ReadBreakLines(), te::mnt::ReadSamples(), RetrieveUsingSpatialFilter(), te::vp::Union::setGeomAsMulti(), te::vp::Difference::setGeomAsMulti(), te::vp::SetGeomAsMulti(), te::gm::GeometryCollection::setGeometryN(), te::gm::CurvePolygon::setRingN(), te::vp::MultipartToSinglepart::single2multi(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsGeometry::tcCreatePolygon(), TsGeometry::tcMisc(), te::gm::CircularString::transform(), te::gm::LineString::transform(), te::gm::UnaryUnion(), te::gm::Validate(), and te::pgis::EWKBWriter::visit().
|
virtualinherited |
It returns the data type code associated to the data value.
Implements te::dt::AbstractData.
Definition at line 1065 of file geometry/Geometry.cpp.
References te::dt::GEOMETRY_TYPE.
|
inherited |
It serializes the geometry to a WKB representation into the specified buffer.
The wkb parameter must have at least getWkbSize() in order to be used. Don't pass a NULL pointer or a buffer smaller than the size needed. Note that the WKB will be on the specified byte order.
| wkb | The buffer where the Geometry will be serialized. |
| byteOrder | The byte order used to store/serialize the geometry. |
| Exception | It will throw an exception if the operation could not be performed. |
Definition at line 139 of file geometry/Geometry.cpp.
References te::gm::WKBWriter::write().
Referenced by te::gm::Geometry::asBinary(), te::ado::Convert2Ado(), te::gpkg::Convert2OGR(), te::ogr::Convert2OGR(), Geometry_GetHWkb(), Geometry_GetWkb(), TsWKBReader::tcCreateGeometriesAndApplyReadTests(), TsGEOSWriterReader::tcCreateGeometriesAndApplyReadTests(), TsWKBReader::tcCreateGeomFromWKTAndApplyReadTests(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), and TsGeometry::tcCreatePointZM().
|
inherited |
It returns the size required by a WKB representation for this geometric object.
This is the preferred method for creating a WKB. First of all, it gives you the possibility to use a pre-allocated buffer. So, this method can be used in conjunction with the getWkb method.
Definition at line 134 of file geometry/Geometry.cpp.
References te::gm::WKBSize::size().
Referenced by te::pgis::PreparedQuery::bind(), te::ado::Convert2Ado(), te::gpkg::Convert2OGR(), te::ogr::Convert2OGR(), te::pgis::Convert2PostGIS(), Geometry_GetHWkb(), Geometry_GetWkb(), Geometry_GetWkbSize(), TsWKBReader::tcCreateGeometriesAndApplyReadTests(), TsGEOSWriterReader::tcCreateGeometriesAndApplyReadTests(), TsWKBReader::tcCreateGeomFromWKTAndApplyReadTests(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and wkbConversionExamples().
|
virtualinherited |
It returns a geometric object that represents the point set intersection with another geometry.
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 681 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by CalculateHorizontalLines(), CalculateVerticalLines(), te::vp::Intersection::executeMemory(), Geometry_Intersection(), intersection(), and te::rst::LineIterator< T >::LineIterator().
It returns true if the geometry object spatially intersects rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 335 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::edit::SubtractAreaTool::buildPolygon(), te::edit::AggregateAreaTool::buildPolygon(), te::vp::BufferMemory::dissolveMemory(), te::vp::BufferQuery::dissolveQuery(), te::rp::ClassifierDummyStrategy::execute(), Geometry_Intersects(), te::attributefill::VectorToVectorMemory::getMinimumDistanceFromCentroid(), te::st::Trajectory::getPatches(), te::edit::VertexTool::mouseMoveEvent(), te::qt::widgets::ClippingWizardPage::onGeomAquired(), te::qt::widgets::ROIManagerWidget::onGeomAquired(), te::gm::SatisfySpatialRelation(), spatialRelation(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
inherited |
It returns true if this geometric object has z coordinate values.
Definition at line 198 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_gType.
Referenced by Geometry_Is3D(), te::mnt::ReadSamples(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
inline |
It returns true if the polygon closes on itself, and thus has no boundary and encloses a solid.
Definition at line 190 of file PolyhedralSurface.h.
|
inherited |
It returns true if this geometric object is a collection.
Definition at line 220 of file geometry/Geometry.cpp.
References te::gm::GeometryCollectionType, te::gm::Geometry::get2DGeomTypeId(), te::gm::MultiLineStringType, te::gm::MultiPointType, te::gm::MultiPolygonType, and te::gm::MultiSurfaceType.
|
virtualinherited |
It returns true if this geometric object is the empty Geometry.
If true, then this geometric object represents the empty point set for the coordinate space.
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 144 of file geometry/Geometry.cpp.
References TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::vp::Intersection::executeMemory(), Geometry_IsEmpty(), te::gm::MultiLineToDefinedType(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
staticinherited |
It tells if the given string is a geometry data type.
| stype | The geometry type to be checked. |
Definition at line 1009 of file geometry/Geometry.cpp.
References te::gm::Geometry::getGeomTypeId(), and te::gm::UnknownGeometryType.
Referenced by te::sqlite::Convert2TerraLib(), and Geometry_IsGeomType().
|
inherited |
It returns true if this geometric object has m coordinate values.
Definition at line 209 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_gType.
Referenced by Geometry_IsMeasured(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
virtualinherited |
It returns true if this geometric object has no anomalous points, such as self intersection or self tangency.
See the ISO and OGC documentation for an explanation about specific conditions of each type of geometry to be considered not simple.
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 162 of file geometry/Geometry.cpp.
References TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_IsSimple(), te::gm::Curve::isRing(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
virtualinherited |
It tells if the geometry is well formed.
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 180 of file geometry/Geometry.cpp.
References TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::attributefill::VectorToVectorMemory::checkGeometries(), te::vp::BufferMemory::dissolveMemory(), te::vp::BufferQuery::dissolveQuery(), te::qt::widgets::FilterDialogForm::drawGeom(), te::qt::widgets::ColorTransformDialog::drawGeom(), te::qt::widgets::FilterDialogForm::drawPreview(), te::qt::widgets::ColorTransformDialog::drawPreview(), te::vp::Intersection::executeMemory(), Geometry_IsValid(), te::attributefill::VectorToVectorMemory::getIntersections(), te::qt::widgets::ClippingWizardPage::getLayerClippingAttribute(), te::rp::Blender::initialize(), te::edit::VertexTool::mouseReleaseEvent(), te::qt::widgets::FilterDialogForm::onEnvelopeAcquired(), te::qt::widgets::ROIManagerWidget::onEnvelopeAcquired(), te::qt::widgets::ClippingWizardPage::onGeomAquired(), te::qt::widgets::ROIManagerWidget::onGeomAquired(), te::qt::widgets::MixtureModelWizardPage::onGeomAquired(), te::qt::widgets::ColorTransformDialog::onNewROIPushButtonClicked(), te::vp::BufferMemory::setBuffer(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), TsNoAreaRings::tcCreatePolygon(), and TsGeometry::tcCreatePolygon().
|
staticinherited |
It loads the internal MAP of geometry type names to geometry type ids.
Definition at line 1014 of file geometry/Geometry.cpp.
References te::gm::GeometryCollectionMType, te::gm::GeometryCollectionType, te::gm::GeometryCollectionZMType, te::gm::GeometryCollectionZType, te::gm::GeometryMType, te::gm::GeometryType, te::gm::GeometryZMType, te::gm::GeometryZType, te::gm::LineStringMType, te::gm::LineStringType, te::gm::LineStringZMType, te::gm::LineStringZType, te::gm::MultiLineStringMType, te::gm::MultiLineStringType, te::gm::MultiLineStringZMType, te::gm::MultiLineStringZType, te::gm::MultiPointMType, te::gm::MultiPointType, te::gm::MultiPointZMType, te::gm::MultiPointZType, te::gm::MultiPolygonMType, te::gm::MultiPolygonType, te::gm::MultiPolygonZMType, te::gm::MultiPolygonZType, te::gm::MultiSurfaceMType, te::gm::MultiSurfaceType, te::gm::MultiSurfaceZMType, te::gm::MultiSurfaceZType, te::gm::PointMType, te::gm::PointType, te::gm::PointZMType, te::gm::PointZType, te::gm::PolygonMType, te::gm::PolygonType, te::gm::PolygonZMType, te::gm::PolygonZType, and te::gm::Geometry::sm_geomTypeMap.
Referenced by te::gm::Module::initialize().
|
inlinevirtualinherited |
It returns a derived GeometryCollection value according to the specified coordinate value.
| mValue | The coordinate value. |
| Exception | It will throw an exception if the operation could not be performed. |
Definition at line 678 of file geometry/Geometry.h.
References _NOEXCEPT_OP, difference(), intersection(), and Union().
|
virtualinherited |
It returns a derived geometry collection value according to the range of coordinate values inclusively.
| mStart | The initial coordinate value. |
| mEnd | The final coordinate value. |
| Exception | It will throw an exception if the operation could not be performed. |
Reimplemented in te::gm::LineString, te::gm::CircularString, te::gm::CompoundCurve, te::gm::MultiPoint, and te::gm::MultiLineString.
Definition at line 591 of file geometry/Geometry.cpp.
|
virtual |
Assignment operator.
| rhs | The other geometry. |
Definition at line 54 of file PolyhedralSurface.cpp.
References te::common::Clone(), te::common::FreeContents(), m_polygons, and te::gm::Surface::operator=().
It returns true if this geometry object spatially overlaps rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 461 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Overlaps(), te::gm::SatisfySpatialRelation(), and spatialRelation().
|
virtualinherited |
It returns true if this geometry object is spatially related to rhs geometry according to the pattern expressed by the intersection matrix.
It does this by testing for intersections between the interior, boundary and exterior of the two geometric objects as specified by the values in the matrix.
| rhs | The other geometry to be compared. |
| matrix | The intersection matrix. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 486 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Relate().
|
virtualinherited |
It returns the spatial relation between this geometry object and the rhs geometry.
| rhs | The another geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 514 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
| void te::gm::PolyhedralSurface::setNumPatches | ( | std::size_t | size | ) |
It sets the number of including polygons.
If the new size is less than the old it will drop the geometries.
| size | The number of polygons for the PolyhedralSurface. |
Definition at line 72 of file PolyhedralSurface.cpp.
References m_polygons.
| void te::gm::PolyhedralSurface::setPatchN | ( | std::size_t | i, |
| Polygon * | p | ||
| ) |
It sets the informed position polygon to the new one.
| i | The polygon index. |
| p | The new polygon to be placed in the informed position. |
Definition at line 90 of file PolyhedralSurface.cpp.
References m_polygons, and p.
Referenced by te::gm::WKTActions::buildPolyhedralSurface(), and te::gm::WKBReader::getPolyhedralSurface().
|
virtual | ||||||||||||||
It sets the Spatial Reference System ID of the Geometry and all its parts if it is a GeometryCollection (or a Multi).
| srid | The Spatial Reference System ID to be associated to the geometric object. |
Implements te::gm::Geometry.
Definition at line 112 of file PolyhedralSurface.cpp.
References m_polygons, and te::gm::Geometry::m_srid.
|
virtualinherited |
It returns a geometric object that represents the point set symetric difference with another geometry.
| rhs | The other geometry whose symetric difference with this geometry will be calculated. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 768 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_SymDifference(), and te::gm::Validate().
|
inlinevirtualinherited |
It returns the data value in a WKT representation.
Implements te::dt::AbstractData.
Definition at line 936 of file geometry/Geometry.h.
Referenced by PrintCoverageSeriesInfo(), PrintTimeSeriesInfo(), PrintTrajectory(), PrintTrajectoryPatch(), and VectorizeRaster().
It returns true if the geometry object spatially touches rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 361 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by Geometry_Touches(), te::gm::SatisfySpatialRelation(), spatialRelation(), TsGeometry::tcCreateLineString(), TsGeometry::tcCreateLineStringM(), TsGeometry::tcCreateLineStringZ(), TsGeometry::tcCreateLineStringZM(), TsGeometry::tcCreatePoint(), TsGeometry::tcCreatePointM(), TsGeometry::tcCreatePointZ(), TsGeometry::tcCreatePointZM(), and TsGeometry::tcCreatePolygon().
|
virtual | ||||||||||||||
It will transform the coordinates of the Geometry to the new one.
After calling this method the Geometry will be associated to the new SRID.
| srid | The new Spatial Reference System ID used to transform the coordinates of the Geometry. |
| Exception | It will throw an exception if it can not do the transformation. |
Implements te::gm::Geometry.
Definition at line 122 of file PolyhedralSurface.cpp.
References computeMBR(), te::gm::Geometry::m_mbr, m_polygons, te::gm::Geometry::m_srid, and TE_TR.
|
virtualinherited |
It returns a geometric object that represents the point set union with another geometry.
| rhs | Another geometry whose union with this geometry will be calculated. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 710 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::gm::AddLineString(), te::edit::AggregateAreaTool::buildPolygon(), te::vp::BufferMemory::dissolveMemory(), te::vp::BufferQuery::dissolveQuery(), te::edit::MergeGeometriesTool::editingFinished(), te::rp::SequenceMosaic::execute(), Geometry_Union(), te::vp::GetGeometryUnion(), te::addressgeocoding::AddressGeocodingOp::getLineString(), te::mnt::TINGeneration::neigh_union(), and Union().
It returns true if the geometry object is spatially within rhs geometry.
| rhs | The other geometry to be compared. |
| std::exception | It will throw an exception if the operation could not be performed. |
Definition at line 411 of file geometry/Geometry.cpp.
References te::gm::Geometry::m_srid, TE_TR, and te::gm::GEOSWriter::write().
Referenced by te::graph::LayerRenderer::drawMemoryGraph(), Geometry_Within(), te::sa::SamplePointsGeneratorStratified::getPointInGeometry(), te::gm::SatisfySpatialRelation(), and spatialRelation().
|
protectedinherited |
Internal geometry type.
Definition at line 942 of file geometry/Geometry.h.
Referenced by te::gm::CircularString::CircularString(), te::gm::Geometry::get2DGeometryType(), te::gm::Geometry::get2DGeomTypeId(), te::gm::Geometry::getCoordinateDimension(), te::gm::CircularString::getPointN(), te::gm::LineString::getPointN(), te::gm::Geometry::is3D(), te::gm::Geometry::isMeasured(), te::gm::LineString::LineString(), te::gm::Geometry::operator=(), te::gm::Line::setCoord(), te::gm::CircularString::setNumCoordinates(), te::gm::LineString::setNumCoordinates(), and te::gm::CircularString::setPointN().
|
mutableprotectedinherited |
The geometry minimum bounding rectangle.
Definition at line 944 of file geometry/Geometry.h.
Referenced by te::gm::CompoundCurve::computeMBR(), te::gm::GeometryCollection::computeMBR(), te::gm::CircularString::computeMBR(), te::gm::LineString::computeMBR(), te::gm::Point::computeMBR(), computeMBR(), te::gm::CurvePolygon::computeMBR(), te::gm::Geometry::getMBR(), te::gm::Geometry::operator=(), te::gm::CompoundCurve::transform(), te::gm::GeometryCollection::transform(), te::gm::CircularString::transform(), te::gm::LineString::transform(), te::gm::Point::transform(), transform(), te::gm::CurvePolygon::transform(), and te::gm::Geometry::~Geometry().
|
protected |
An array with the polygon list.
Definition at line 339 of file PolyhedralSurface.h.
Referenced by te::gm::TIN::add(), computeMBR(), getNPoints(), getPatchN(), operator=(), PolyhedralSurface(), te::gm::TIN::setGeometryN(), setNumPatches(), setPatchN(), setSRID(), transform(), and ~PolyhedralSurface().
|
protectedinherited |
The Spatial Reference System code associated to the Geometry.
Definition at line 943 of file geometry/Geometry.h.
Referenced by te::gm::Geometry::buffer(), te::gm::Geometry::contains(), te::gm::Geometry::convexHull(), te::gm::Geometry::coveredBy(), te::gm::Geometry::covers(), te::gm::Geometry::crosses(), te::gm::Geometry::difference(), te::gm::Geometry::disjoint(), te::gm::Geometry::distance(), te::gm::Geometry::dWithin(), te::gm::Geometry::equals(), te::gm::MultiPolygon::getCentroid(), te::gm::CurvePolygon::getCentroid(), te::gm::Geometry::getEnvelope(), te::gm::CircularString::getPointN(), te::gm::LineString::getPointN(), te::gm::Geometry::intersection(), te::gm::Geometry::intersects(), te::gm::Geometry::operator=(), te::gm::Geometry::overlaps(), te::gm::Geometry::relate(), te::gm::CompoundCurve::setSRID(), te::gm::GeometryCollection::setSRID(), te::gm::CircularString::setSRID(), te::gm::LineString::setSRID(), te::gm::Point::setSRID(), setSRID(), te::gm::CurvePolygon::setSRID(), te::gm::Geometry::symDifference(), te::gm::Geometry::touches(), te::gm::CompoundCurve::transform(), te::gm::GeometryCollection::transform(), te::gm::CircularString::transform(), te::gm::LineString::transform(), te::gm::Point::transform(), transform(), te::gm::CurvePolygon::transform(), te::gm::Geometry::Union(), and te::gm::Geometry::within().
|
staticprotectedinherited |
A set of geometry type names (in UPPER CASE).
Definition at line 946 of file geometry/Geometry.h.
Referenced by te::gm::Geometry::getGeomTypeId(), te::gm::Geometry::getGeomTypeString(), and te::gm::Geometry::loadGeomTypeId().
|
staticprivate |
Geometry type name for PolyhedralSurface.
Definition at line 343 of file PolyhedralSurface.h.
Referenced by getGeometryType().