26 #ifndef __TERRALIB_GEOMETRY_INTERNAL_WKBWRITER_H
27 #define __TERRALIB_GEOMETRY_INTERNAL_WKBWRITER_H
30 #include "../common/Enums.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.
A class that serializes a geometry to the WKB format.
void visit(const Curve &)
static void write(const Geometry *geom, char *wkb, te::common::MachineByteOrder byteOrder=te::common::NDR)
It serializes the geometry to a WKB representation into the specified buffer.
void visit(const LinearRing &visited)
void visit(const TIN &visited)
void visit(const Triangle &visited)
void reset(char *wkb, te::common::MachineByteOrder byteOrder=te::common::NDR)
It resets the WKB writer an allows a new geometry to be seriealized to a new buffer.
void visit(const MultiCurve &)
void visit(const Point &visited)
void visit(const Polygon &visited)
void visit(const GeometryCollection &visited)
void write(const Geometry *geom)
It serializes the geometry to a WKB representation into the specified buffer.
void visit(const MultiPolygon &visited)
WKBWriter(char *wkb, te::common::MachineByteOrder byteOrder=te::common::NDR)
It constructs a new WKB writer.
void visit(const PolyhedralSurface &visited)
void visit(const MultiLineString &visited)
void visit(const Geometry &)
void visit(const Surface &)
te::common::MachineByteOrder m_byteOrder
The byte order used to encode the WKB.
void visit(const MultiPoint &visited)
char * m_wkb
A pointer that marks the current position in a buffer to be write when parsing the geometry.
void visit(const CompoundCurve &)
void visit(const MultiSurface &)
void visit(const CurvePolygon &)
void visit(const LineString &visited)
void visit(const CircularString &)
MachineByteOrder
Endianness.
A visitor interface for the SymbologyEncoding hierarchy.
#define TEGEOMEXPORT
You can use this macro in order to export/import classes and functions from this module.