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) | |
void | processIntersections (SegmentString *e0, int segIndex0, SegmentString *e1, int segIndex1) |
std::vector< geom::Coordinate > & | getInteriorIntersections () |
virtual bool | isDone () const |
Finds proper and interior intersections in a set of SegmentStrings, and adds them as nodes.
geos::noding::IntersectionFinderAdder::IntersectionFinderAdder | ( | algorithm::LineIntersector & | newLi, | |
std::vector< geom::Coordinate > & | v | |||
) | [inline] |
Creates an intersection finder which finds all proper intersections and stores them in the provided Coordinate array
li | the LineIntersector to use | |
v | the Vector to push interior intersections to |
virtual bool geos::noding::IntersectionFinderAdder::isDone | ( | ) | const [inline, virtual] |
Always process all intersections
Reimplemented from geos::noding::SegmentIntersector.
void geos::noding::IntersectionFinderAdder::processIntersections | ( | SegmentString * | e0, | |
int | segIndex0, | |||
SegmentString * | e1, | |||
int | segIndex1 | |||
) | [virtual] |
This method is called by clients of the SegmentIntersector class to process intersections for two segments of the SegmentStrings 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.