22 #ifndef GEOS_GEOMGRAPH_EDGEINTERSECTIONLIST_H 23 #define GEOS_GEOMGRAPH_EDGEINTERSECTIONLIST_H 25 #include <geos/export.h> 30 #include <geos/geomgraph/EdgeIntersection.h> 31 #include <geos/geom/Coordinate.h> 33 #include <geos/inline.h> 37 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class 65 using container = std::vector<EdgeIntersection>;
66 using const_iterator = container::const_iterator;
69 mutable container nodeMap;
83 void add(
const geom::Coordinate& coord, std::size_t segmentIndex,
double dist);
89 std::sort(nodeMap.begin(), nodeMap.end());
90 nodeMap.erase(std::unique(nodeMap.begin(), nodeMap.end()), nodeMap.end());
94 return nodeMap.begin();
102 bool isEmpty()
const;
118 void addSplitEdges(std::vector<Edge*>* edgeList);
121 std::string print()
const;
133 #endif // ifndef GEOS_GEOMGRAPH_EDGEINTERSECTIONLIST_H Coordinate is the lightweight class used to store coordinates.
Definition: Coordinate.h:60
Represents a point on an edge which intersects with another edge.
Definition: EdgeIntersection.h:45
A list of edge intersections along an Edge.
Definition: EdgeIntersectionList.h:60
Basic namespace for all GEOS functionalities.
Definition: Angle.h:26
Definition: geomgraph/Edge.h:66