26 #ifndef __TERRALIB_POSTGIS_INTERNAL_EWKBWRITER_H
27 #define __TERRALIB_POSTGIS_INTERNAL_EWKBWRITER_H
30 #include "../common/Enums.h"
31 #include "../geometry/Visitor.h"
35 #include "../geometry_fw.h"
CircularString is a curve with circular interpolation between points.
CompoundCurve is a curve that may have circular and linear segments.
CurvePolygon is a planar surface defined by 1 exterior boundary and 0 or more interior boundaries.
Curve is an abstract class that represents 1-dimensional geometric objects stored as a sequence of co...
It is a collection of other geometric objects.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
LineString is a curve with linear interpolation between points.
A LinearRing is a LineString that is both closed and simple.
MultiCurve is a class that represents a 1-dimensional GeometryCollection whose elements are curves.
MultiLineString is a MultiCurve whose elements are LineStrings.
MultiPoint is a GeometryCollection whose elements are restricted to points.
MultiPolygon is a MultiSurface whose elements are Polygons.
MultiSurface is a class that represents a 2-dimensional GeometryCollection whose elements are surface...
A point with x and y coordinate values.
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
PolyhedralSurface is a contiguous collection of polygons, which share common boundary segments.
Surface is an abstract class that represents a 2-dimensional geometric objects.
TIN (triangulated irregular network) is a PolyhedralSurface consisting only of Triangle patches.
Triangle is a polygon with 3 distinct, non-collinear vertices and no interior boundary.
A visitor interface for the Geometry hierarchy.
An utility class for writing a PostGIS EWKB.
void reset(char *ewkb, te::common::MachineByteOrder byteOrder=te::common::NDR)
It resets the EWKB writer an allows a new geometry to be seriealized to a new buffer.
void visit(const te::gm::Polygon &visited)
void visit(const te::gm::CurvePolygon &)
void visit(const te::gm::PolyhedralSurface &)
void visit(const te::gm::CircularString &)
te::common::MachineByteOrder m_byteOrder
The byte order used to encode the EWKB.
void visit(const te::gm::CompoundCurve &)
void visit(const te::gm::MultiLineString &visited)
void visit(const te::gm::LinearRing &visited)
void visit(const te::gm::GeometryCollection &visited)
EWKBWriter(char *ewkb, te::common::MachineByteOrder byteOrder=te::common::NDR)
It constructs a new EWKB writer.
void visit(const te::gm::MultiPoint &visited)
void visit(const te::gm::Geometry &)
void visit(const te::gm::MultiSurface &)
void visit(const te::gm::MultiPolygon &visited)
void write(const te::gm::Geometry *geom)
It serializes the geometry to an EWKB representation into the specified buffer.
void visit(const te::gm::MultiCurve &)
void visit(const te::gm::Curve &)
void visit(const te::gm::Surface &)
char * m_ewkb
A pointer that marks the current position in a buffer to be write when parsing the geometry.
bool m_outputSRID
If true we add a bit indicating that the srid will be outputed with the gometry.
void visit(const te::gm::Triangle &)
static void write(const te::gm::Geometry *geom, char *ewkb, te::common::MachineByteOrder byteOrder=te::common::NDR)
It serializes the geometry to an EWKB representation into the specified buffer.
void visit(const te::gm::TIN &)
void visit(const te::gm::Point &visited)
void visit(const te::gm::LineString &visited)
MachineByteOrder
Endianness.
#define TEPGISEXPORT
You can use this macro in order to export/import classes and functions from this module.
Proxy configuration file for TerraView (see terraview_config.h).