com.vividsolutions.jts.noding
Class SegmentStringDissolver

java.lang.Object
  extended bycom.vividsolutions.jts.noding.SegmentStringDissolver

public class SegmentStringDissolver
extends java.lang.Object

Dissolves a noded collection of SegmentStrings to produce a set of merged linework with unique segments. A custom SegmentStringDissolver.SegmentStringMerger merging strategy can be supplied. This strategy will be called when two identical (up to orientation) strings are dissolved together. The default merging strategy is simply to discard one of the merged strings.

A common use for this class is to merge noded edges while preserving topological labelling. This requires a custom merging strategy to be supplied to merge the topology labels appropriately.

Version:
1.7
See Also:
SegmentStringDissolver.SegmentStringMerger

Nested Class Summary
static interface SegmentStringDissolver.SegmentStringMerger
          A merging strategy which can be used to update the context data of SegmentStrings which are merged during the dissolve process.
 
Constructor Summary
SegmentStringDissolver()
          Creates a dissolver with the default merging strategy.
SegmentStringDissolver(SegmentStringDissolver.SegmentStringMerger merger)
          Creates a dissolver with a user-defined merge strategy.
 
Method Summary
 void dissolve(java.util.Collection segStrings)
          Dissolve all SegmentStrings in the input Collection
 void dissolve(SegmentString segString)
          Dissolve the given SegmentString.
 java.util.Collection getDissolved()
          Gets the collection of dissolved (i.e.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SegmentStringDissolver

public SegmentStringDissolver(SegmentStringDissolver.SegmentStringMerger merger)
Creates a dissolver with a user-defined merge strategy.

Parameters:
merger - the merging strategy to use

SegmentStringDissolver

public SegmentStringDissolver()
Creates a dissolver with the default merging strategy.

Method Detail

dissolve

public void dissolve(java.util.Collection segStrings)
Dissolve all SegmentStrings in the input Collection

Parameters:
segStrings -

dissolve

public void dissolve(SegmentString segString)
Dissolve the given SegmentString.

Parameters:
segString - the string to dissolve

getDissolved

public java.util.Collection getDissolved()
Gets the collection of dissolved (i.e. unique) SegmentStrings

Returns:
the unique SegmentStrings