19 #ifndef GEOS_OP_LINEMERGE_LINEMERGER_H
20 #define GEOS_OP_LINEMERGE_LINEMERGER_H
22 #include <geos/export.h>
23 #include <geos/operation/linemerge/LineMergeGraph.h>
29 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
36 class GeometryFactory;
39 namespace planargraph {
45 class LineMergeDirectedEdge;
81 std::vector<geom::LineString*> *mergedLineStrings;
83 std::vector<EdgeString*> edgeStrings;
89 void buildEdgeStringsForObviousStartNodes();
91 void buildEdgeStringsForIsolatedLoops();
93 void buildEdgeStringsForUnprocessedNodes();
95 void buildEdgeStringsForNonDegree2Nodes();
113 void add(std::vector<geom::Geometry*> *geometries);
131 std::vector<geom::LineString*>* getMergedLineStrings();
145 #endif // GEOS_OP_LINEMERGE_LINEMERGER_H
Sews together a set of fully noded LineStrings.
Definition: LineMerger.h:75
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:167
Definition: LineString.h:70
A planar graph of edges that is analyzed to sew the edges together.
Definition: LineMergeGraph.h:59
A sequence of LineMergeDirectedEdge forming one of the lines that will be output by the line-merging ...
Definition: EdgeString.h:55
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:67
A node in a PlanarGraph is a location where 0 or more Edge meet.
Definition: planargraph/Node.h:45
A planargraph::DirectedEdge of a LineMergeGraph.
Definition: LineMergeDirectedEdge.h:47