GEOS
3.9.1dev
|
Nodes a set of SegmentStrings completely. More...
#include <IteratedNoder.h>
Public Member Functions | |
IteratedNoder (const geom::PrecisionModel *newPm) | |
~IteratedNoder () override | |
void | setMaximumIterations (int n) |
Sets the maximum number of noding iterations performed before the noding is aborted. More... | |
std::vector< SegmentString * > * | getNodedSubstrings () const override |
Returns a collection of fully noded SegmentStrings. The SegmentStrings have the same context as their parent. More... | |
void | computeNodes (std::vector< SegmentString * > *inputSegmentStrings) override |
Fully nodes a list of SegmentStrings, i.e. peforms noding iteratively until no intersections are found between segments. More... | |
Public Member Functions inherited from geos::noding::Noder | |
virtual | ~Noder () |
Private Member Functions | |
void | node (std::vector< SegmentString * > *segStrings, int &numInteriorIntersections, geom::Coordinate &intersectionPoint) |
Private Attributes | |
const geom::PrecisionModel * | pm |
algorithm::LineIntersector | li |
std::vector< SegmentString * > * | nodedSegStrings |
int | maxIter |
Static Private Attributes | |
static const int | MAX_ITER = 5 |
Additional Inherited Members | |
Protected Member Functions inherited from geos::noding::Noder | |
Noder () | |
Nodes a set of SegmentStrings completely.
The set of segmentStrings is fully noded; i.e. noding is repeated until no further intersections are detected.
Iterated noding using a FLOATING precision model is not guaranteed to converge, due to roundoff error. This problem is detected and an exception is thrown. Clients can choose to rerun the noding using a lower precision model.
Definition at line 55 of file IteratedNoder.h.
|
inline |
Definition at line 76 of file IteratedNoder.h.
|
inlineoverride |
Definition at line 84 of file IteratedNoder.h.
|
overridevirtual |
Fully nodes a list of SegmentStrings, i.e. peforms noding iteratively until no intersections are found between segments.
Maintains labelling of edges correctly through the noding.
inputSegmentStrings | a collection of SegmentStrings to be noded |
TopologyException | if the iterated noding fails to converge. |
Implements geos::noding::Noder.
|
inlineoverridevirtual |
Returns a collection of fully noded SegmentStrings. The SegmentStrings have the same context as their parent.
Implements geos::noding::Noder.
Definition at line 103 of file IteratedNoder.h.
|
private |
Node the input segment strings once and create the split edges between the nodes
|
inline |
Sets the maximum number of noding iterations performed before the noding is aborted.
Experience suggests that this should rarely need to be changed from the default. The default is MAX_ITER.
n | the maximum number of iterations to perform |
Definition at line 97 of file IteratedNoder.h.
|
private |
Definition at line 62 of file IteratedNoder.h.
|
staticprivate |
Definition at line 58 of file IteratedNoder.h.
|
private |
Definition at line 64 of file IteratedNoder.h.
|
private |
Definition at line 63 of file IteratedNoder.h.
|
private |
Definition at line 61 of file IteratedNoder.h.