GEOS: geos::noding::IteratedNoder Class Reference

Public Member Functions

# geos::noding::IteratedNoder Class Reference

`#include <IteratedNoder.h>`

Inheritance diagram for geos::noding::IteratedNoder:

List of all members.

## Public Member Functions
| IteratedNoder (const geom::PrecisionModel *newPm)
void | setMaximumIterations (int n)
std::vector< SegmentString * > * | getNodedSubstrings () const
| Returns a Collection of fully noded SegmentStrings. The SegmentStrings have the same context as their parent.
void | computeNodes (std::vector< SegmentString * > *inputSegmentStrings)

## Detailed Description

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.

## Member Function Documentation

void geos::noding::IteratedNoder::computeNodes | ( | std::vector< SegmentString * > * | inputSegmentStrings ) | `[virtual]`

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.

Parameters:

  segStrings | a collection of SegmentStrings to be noded

Exceptions:

  TopologyException | if the iterated noding fails to converge.

Implements geos::noding::Noder.

std::vector<SegmentString*>* geos::noding::IteratedNoder::getNodedSubstrings | ( | ) | const`[inline, virtual]`

Returns a Collection of fully noded SegmentStrings. The SegmentStrings have the same context as their parent.

Returns:
  a newly allocated std::vector of const SegmentStrings. Caller is responsible to delete it

Implements geos::noding::Noder.

void geos::noding::IteratedNoder::setMaximumIterations | ( | int | n ) | `[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.

Parameters:

  n | the maximum number of iterations to perform

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

- IteratedNoder.h