20 #ifndef GEOS_LINEARREF_LINEARGEOMETRYBUILDER_H
21 #define GEOS_LINEARREF_LINEARGEOMETRYBUILDER_H
23 #include <geos/geom/Coordinate.h>
24 #include <geos/geom/CoordinateList.h>
25 #include <geos/geom/Geometry.h>
26 #include <geos/geom/GeometryFactory.h>
27 #include <geos/linearref/LinearLocation.h>
40 class LinearGeometryBuilder {
42 const geom::GeometryFactory* geomFact;
44 typedef std::vector<const geom::Geometry*> GeomPtrVect;
49 bool ignoreInvalidLines;
51 geom::CoordinateArraySequence* coordList;
53 geom::Coordinate lastPt;
56 LinearGeometryBuilder(
const geom::GeometryFactory* geomFact);
58 ~LinearGeometryBuilder();
85 void add(
const geom::Coordinate& pt);
94 void add(
const geom::Coordinate& pt,
bool allowRepeatedPoints);
97 geom::Coordinate getLastCoordinate()
const;
102 geom::Geometry* getGeometry();