16 #ifndef GEOS_GEOMGRAPH_INDEX_SIMPLEMCSWEEPLINEINTERSECTOR_H
17 #define GEOS_GEOMGRAPH_INDEX_SIMPLEMCSWEEPLINEINTERSECTOR_H
19 #include <geos/export.h>
23 #include <geos/geomgraph/index/EdgeSetIntersector.h>
24 #include <geos/geomgraph/index/SegmentIntersector.h>
25 #include <geos/geomgraph/index/SweepLineEvent.h>
26 #include <geos/geomgraph/index/MonotoneChain.h>
30 #pragma warning(disable: 4251)
65 std::vector<Edge*>* edges1,
76 std::vector<SweepLineEvent*> events;
77 std::deque<SweepLineEvent> eventStore;
78 std::deque<MonotoneChain> chains;
84 void add(std::vector<Edge*>* edges);
86 void add(std::vector<Edge*>* edges,
void* edgeSet);
88 void add(
Edge* edge,
void* edgeSet);
94 void processOverlaps(
size_t start,
size_t end,
Definition: geomgraph/Edge.h:66
An EdgeSetIntersector computes all the intersections between the edges in the set.
Definition: EdgeSetIntersector.h:41
Computes the intersection of line segments, and adds the intersection to the edges containing the seg...
Definition: geomgraph/index/SegmentIntersector.h:47
Finds all intersections in one or two sets of edges, using an x-axis sweepline algorithm in conjuncti...
Definition: SimpleMCSweepLineIntersector.h:53
void computeIntersections(std::vector< Edge * > *edges, SegmentIntersector *si, bool testAllSegments) override
Computes all self-intersections between edges in a set of edges, allowing client to choose whether se...
void computeIntersections(std::vector< Edge * > *edges0, std::vector< Edge * > *edges1, SegmentIntersector *si) override
Computes all mutual intersections between two sets of edges.
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26