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> 25 #include <geos/index/chain/MonotoneChain.h> 26 #include <geos/index/strtree/TemplateSTRtree.h> 40 class SegmentIntersector;
79 void process(SegmentString::ConstVect* segStrings)
override;
86 SegmentOverlapAction(
const SegmentOverlapAction& other) =
delete;
87 SegmentOverlapAction& operator=(
const SegmentOverlapAction& rhs) =
delete;
107 typedef std::vector<index::chain::MonotoneChain> MonoChains;
108 MonoChains monoChains;
115 index::strtree::TemplateSTRtree<const index::chain::MonotoneChain*> index;
125 MonoChains indexChains;
129 void intersectChains();
138 #endif // GEOS_NODING_MCINDEXSEGMENTSETMUTUALINTERSECTOR_H An interface for classes which represent a sequence of contiguous line segments.
Definition: SegmentString.h:46
The action for the internal iterator for performing overlap queries on a MonotoneChain.
Definition: MonotoneChainOverlapAction.h:43
Abstract class defines basic insertion and query operations supported by classes implementing spatial...
Definition: SpatialIndex.h:47
Intersects two sets of SegmentStrings using a index based on MonotoneChains and a SpatialIndex...
Definition: MCIndexSegmentSetMutualIntersector.h:56
Basic namespace for all GEOS functionalities.
Definition: Angle.h:26
Processes possible intersections detected by a Noder.
Definition: noding/SegmentIntersector.h:48
An intersector for the red-blue intersection problem.
Definition: SegmentSetMutualIntersector.h:37
Monotone Chains are a way of partitioning the segments of a linestring to allow for fast searching of...
Definition: index/chain/MonotoneChain.h:86
void process(SegmentString::ConstVect *segStrings) override
void setBaseSegments(SegmentString::ConstVect *segStrings) override