com.vividsolutions.jts.noding
Class IteratedNoder
java.lang.Object
com.vividsolutions.jts.noding.IteratedNoder
- All Implemented Interfaces:
- Noder
public class IteratedNoder
- extends java.lang.Object
- implements 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.
- Version:
- 1.7
Method Summary |
void |
computeNodes(java.util.Collection segStrings)
Fully nodes a list of SegmentStrings , i.e. |
java.util.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. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MAX_ITER
public static final int MAX_ITER
- See Also:
- Constant Field Values
IteratedNoder
public IteratedNoder(PrecisionModel pm)
setMaximumIterations
public void setMaximumIterations(int maxIter)
- 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:
maxIter
- the maximum number of iterations to perform
getNodedSubstrings
public java.util.Collection getNodedSubstrings()
- Description copied from interface:
Noder
- Returns a
Collection
of fully noded SegmentStrings
.
The SegmentStrings have the same context as their parent.
- Specified by:
getNodedSubstrings
in interface Noder
- Returns:
- a Collection of SegmentStrings
computeNodes
public void computeNodes(java.util.Collection segStrings)
throws TopologyException
- 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.
- Specified by:
computeNodes
in interface Noder
- Parameters:
segStrings
- a collection of SegmentStrings to be noded
- Throws:
TopologyException
- if the iterated noding fails to converge.