GEOS 3.11.1
|
Finds proper and interior intersections in a set of SegmentStrings, and adds them as nodes. More...
#include <IntersectionFinderAdder.h>
Public Member Functions | |
IntersectionFinderAdder (algorithm::LineIntersector &newLi, std::vector< geom::Coordinate > &v) | |
Creates an intersection finder which finds all proper intersections and stores them in the provided Coordinate array. More... | |
void | processIntersections (SegmentString *e0, std::size_t segIndex0, SegmentString *e1, std::size_t segIndex1) override |
This method is called by clients of the SegmentIntersector class to process intersections for two segments of the SegmentString s being intersected. More... | |
std::vector< geom::Coordinate > & | getInteriorIntersections () |
bool | isDone () const override |
virtual void | processIntersections (SegmentString *e0, std::size_t segIndex0, SegmentString *e1, std::size_t segIndex1)=0 |
virtual bool | isDone () const |
Reports whether the client of this class needs to continue testing all intersections in an arrangement. More... | |
Finds proper and interior intersections in a set of SegmentStrings, and adds them as nodes.
|
inline |
Creates an intersection finder which finds all proper intersections and stores them in the provided Coordinate array.
newLi | the LineIntersector to use |
v | the Vector to push interior intersections to |
|
inlineoverridevirtual |
Always process all intersections
Reimplemented from geos::noding::SegmentIntersector.
|
overridevirtual |
This method is called by clients of the SegmentIntersector class to process intersections for two segments of the SegmentString
s being intersected.
Note that some clients (such as MonotoneChains
) may optimize away this call for segment pairs which they have determined do not intersect (e.g. by an disjoint envelope test).
Implements geos::noding::SegmentIntersector.