public class LineMerger extends Object
Merging stops at nodes of degree 1 or degree 3 or more. In other words, all nodes of degree 2 are merged together. The exception is in the case of an isolated loop, which only has degree-2 nodes. In this case one of the nodes is chosen as a starting point.
The direction of each merged LineString will be that of the majority of the LineStrings from which it was derived.
Any dimension of Geometry is handled - the constituent linework is extracted to form the edges. The edges must be correctly noded; that is, they must only meet at their endpoints. The LineMerger will accept non-noded input but will not merge non-noded edges.
Input lines which are empty or contain only a single unique coordinate are not included in the merging.
Constructor and Description |
---|
LineMerger()
Creates a new line merger.
|
Modifier and Type | Method and Description |
---|---|
void |
add(Collection geometries)
Adds a collection of Geometries to be processed.
|
void |
add(Geometry geometry)
Adds a Geometry to be processed.
|
Collection |
getMergedLineStrings()
Gets the
LineString s created by the merging process. |
public void add(Geometry geometry)
geometry
- geometry to be line-mergedpublic void add(Collection geometries)
geometries
- the geometries to be line-mergedpublic Collection getMergedLineStrings()
LineString
s created by the merging process.Copyright © 2024. All rights reserved.