44 #include "../common/STLUtils.h"
73 m_points.push_back(p);
80 m_points.push_back(p);
87 m_points.push_back(p);
94 m_points.push_back(p);
101 m_points.push_back(p);
108 m_points.push_back(p);
115 m_points.push_back(p);
122 m_points.push_back(p);
261 buildPolyhedralSurface(ps);
267 buildPolyhedralSurface(ps);
273 buildPolyhedralSurface(ps);
279 buildPolyhedralSurface(ps);
285 buildPolyhedralSurface(tin);
291 buildPolyhedralSurface(tin);
297 buildPolyhedralSurface(tin);
303 buildPolyhedralSurface(tin);
355 m_geometries.push_back(m_g);
360 m_geometries.clear();
365 for(std::size_t i = 0; i < l->
getNPoints(); ++i)
368 m_lines.push_back(l);
378 std::size_t size = m_lines.size();
379 for(std::size_t i = 0; i < size; ++i)
380 p->
setRingN(i, dynamic_cast<te::gm::LinearRing*>(m_lines[i]));
384 m_polygons.push_back(p);
391 std::size_t size = m_lines.size();
394 for(std::size_t i = 0; i < size; ++i)
395 p->
setRingN(i, dynamic_cast<te::gm::LinearRing*>(m_lines[i]));
399 m_polygons.push_back(p);
406 std::size_t size = m_points.size();
409 for(std::size_t i = 0; i < size; ++i)
419 std::size_t size = m_lines.size();
422 for(std::size_t i = 0; i < size; ++i)
432 std::size_t size = m_polygons.size();
435 for(std::size_t i = 0; i < size; ++i)
445 std::size_t size = m_polygons.size();
446 for(std::size_t i = 0; i < size; ++i)
456 std::size_t size = m_geometries.size();
458 for(std::size_t i = 0; i < size; ++i)
461 m_geometries.clear();
MultiLineString is a MultiCurve whose elements are LineStrings.
PolyhedralSurface is a contiguous collection of polygons, which share common boundary segments...
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
void reset()
This method resets the Action class to original state.
void createMultiPolygon()
Triangle is a polygon with 3 distinct, non-collinear vertices and no interior boundary.
std::size_t getNPoints() const
It returns the number of points (vertexes) in the linestring.
void buildMultiPoint(const GeomType &t)
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
A LinearRing is a LineString that is both closed and simple.
void buildMultiLineString(const GeomType &t)
A point with z-coordinate value.
void buildLine(LineString *l)
void FreeContents(boost::unordered_map< K, V * > &m)
This function can be applied to a map of pointers. It will delete each pointer in the map...
Geometry * getGeometry()
It returns the geometry generated by the parser process.
TIN (triangulated irregular network) is a PolyhedralSurface consisting only of Triangle patches...
A LinearRing is a LineString that is both closed and simple.
WKTActions()
Default constructor.
It is a collection of other geometric objects.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
A point with z-coordinate value.
void createPolyhedralSurfaceZ()
void buildGeometryCollection(const GeomType &t)
MultiPoint is a GeometryCollection whose elements are restricted to points.
A point with a z-coordinate value and an associated measurement.
void createPolyhedralSurface()
LineString is a curve with linear interpolation between points.
void createGeometryCollectionZM()
void createGeometryCollectionM()
void createMultiPointZM()
void createPolyhedralSurfaceZM()
void createMultiLineStringZM()
void buildMultiPolygon(const GeomType &t)
MultiPolygon is a MultiSurface whose elements are Polygons.
void createMultiPolygonZ()
void createPolyhedralSurfaceM()
void createMultiLineString()
void setPointN(std::size_t i, const Point &p)
It sets the value of the specified point to this new one.
A point with x and y coordinate values.
void buildPolyhedralSurface(PolyhedralSurface *ps)
void createGeometryCollection()
LineString is a curve with linear interpolation between points.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
void setPatchN(std::size_t i, Polygon *p)
It sets the informed position polygon to the new one.
A point with x and y coordinate values.
GeomType
Each enumerated type is compatible with a Well-known Binary (WKB) type code.
A point with an associated measure.
A point with a z-coordinate value and an associated measurement.
void createMultiLineStringM()
TIN (triangulated irregular network) is a PolyhedralSurface consisting only of Triangle patches...
void createMultiPolygonZM()
void createLinearRingZM()
It is a collection of other geometric objects.
PolyhedralSurface is a contiguous collection of polygons, which share common boundary segments...
MultiPolygon is a MultiSurface whose elements are Polygons.
MultiPoint is a GeometryCollection whose elements are restricted to points.
Triangle is a polygon with 3 distinct, non-collinear vertices and no interior boundary.
void createMultiPolygonM()
A class that implements the semanthic actions to grammar rules for well known text (WKT) format for G...
void createMultiLineStringZ()
void setRingN(std::size_t i, Curve *r)
It sets the informed position ring to the new one.
void setGeometryN(std::size_t i, Geometry *g)
It sets the n-th geometry in this geometry collection.
A point with an associated measure.
void createGeometryCollectionZ()
void buildPolygon(const GeomType &t)
MultiLineString is a MultiCurve whose elements are LineStrings.