public class IteratedNoder extends Objectimplements Noder
NodedSegmentStrings completely. The set of segment strings 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.
| Modifier and Type | Field and Description |
|---|---|
static int |
MAX_ITER
|
| Constructor and Description |
|---|
IteratedNoder(PrecisionModel
|
| Modifier and Type | Method and Description |
|---|---|
void |
computeNodes(Collection
Fully nodes a list of
SegmentStrings, i.e.
|
Collection |
getNodedSubstrings()
Returns a
Collection of fully noded
SegmentStrings.
|
void |
setMaximumIterations(int maxIter)
Sets the maximum number of noding iterations performed before the noding is aborted.
|
public static final int MAX_ITER
public IteratedNoder(PrecisionModelpm)
public void setMaximumIterations(int maxIter)
maxIter - the maximum number of iterations to perform
public CollectiongetNodedSubstrings()
Noder
Collection of fully noded
SegmentStrings. The SegmentStrings have the same context as their parent.
getNodedSubstrings in interface
Noder
public void computeNodes(CollectionsegStrings) throws TopologyException
SegmentStrings, i.e. peforms noding iteratively until no intersections are found between segments. Maintains labelling of edges correctly through the noding.
computeNodes in interface
Noder
segStrings - a collection of SegmentStrings to be noded
TopologyException - if the iterated noding fails to converge.