20 #ifndef GEOS_NODING_MCINDEXSEGMENTSETMUTUALINTERSECTOR_H
21 #define GEOS_NODING_MCINDEXSEGMENTSETMUTUALINTERSECTOR_H
23 #include <geos/noding/SegmentSetMutualIntersector.h>
24 #include <geos/index/chain/MonotoneChainOverlapAction.h>
39 class SegmentIntersector;
71 void process(SegmentString::ConstVect* segStrings)
override;
78 SegmentOverlapAction(
const SegmentOverlapAction& other) =
delete;
79 SegmentOverlapAction& operator=(
const SegmentOverlapAction& rhs) =
delete;
83 index::chain::MonotoneChainOverlapAction(), si(p_si)
99 typedef std::vector<std::unique_ptr<index::chain::MonotoneChain>> MonoChains;
100 MonoChains monoChains;
116 MonoChains chainStore;
120 void intersectChains();
Abstract class defines basic insertion and query operations supported by classes implementing spatial...
Definition: SpatialIndex.h:47
The action for the internal iterator for performing overlap queries on a MonotoneChain.
Definition: MonotoneChainOverlapAction.h:43
Monotone Chains are a way of partitioning the segments of a linestring to allow for fast searching of...
Definition: index/chain/MonotoneChain.h:84
Intersects two sets of SegmentStrings using a index based on MonotoneChains and a SpatialIndex.
Definition: MCIndexSegmentSetMutualIntersector.h:55
MCIndexSegmentSetMutualIntersector(const MCIndexSegmentSetMutualIntersector &)=delete
void setBaseSegments(SegmentString::ConstVect *segStrings) override
void process(SegmentString::ConstVect *segStrings) override
Processes possible intersections detected by a Noder.
Definition: noding/SegmentIntersector.h:48
An intersector for the red-blue intersection problem.
Definition: SegmentSetMutualIntersector.h:37
An interface for classes which represent a sequence of contiguous line segments.
Definition: SegmentString.h:46
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26