GEOS 3.11.1
Public Member Functions | List of all members
geos::noding::IntersectionFinderAdder Class Reference

Finds proper and interior intersections in a set of SegmentStrings, and adds them as nodes. More...

#include <IntersectionFinderAdder.h>

Inheritance diagram for geos::noding::IntersectionFinderAdder:
geos::noding::SegmentIntersector

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 SegmentStrings 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...
 

Detailed Description

Finds proper and interior intersections in a set of SegmentStrings, and adds them as nodes.

Constructor & Destructor Documentation

◆ IntersectionFinderAdder()

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.

Parameters
newLithe LineIntersector to use
vthe Vector to push interior intersections to

Member Function Documentation

◆ isDone()

bool geos::noding::IntersectionFinderAdder::isDone ( ) const
inlineoverridevirtual

Always process all intersections

Returns
false always

Reimplemented from geos::noding::SegmentIntersector.

◆ processIntersections()

void geos::noding::IntersectionFinderAdder::processIntersections ( SegmentString e0,
std::size_t  segIndex0,
SegmentString e1,
std::size_t  segIndex1 
)
overridevirtual

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.


The documentation for this class was generated from the following file: