public class LineDissolver extends Object
Geometry
s
into a set of maximal-length LineString
s
in which every unique segment appears once only.
The output linestrings run between node vertices
of the input, which are vertices which have
either degree 1, or degree 3 or greater.
Use cases for dissolving linear components include generalization (in particular, simplifying polygonal coverages), and visualization (in particular, avoiding symbology conflicts when depicting shared polygon boundaries).
This class does not node the input lines. If there are line segments crossing in the input, they will still cross in the output.
Constructor and Description |
---|
LineDissolver() |
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 dissolved. |
static Geometry |
dissolve(Geometry g)
Dissolves the linear components in a geometry.
|
Geometry |
getResult()
Gets the dissolved result as a MultiLineString.
|
public static Geometry dissolve(Geometry g)
g
- the geometry to dissolvepublic void add(Geometry geometry)
Geometry
to be dissolved.
Any number of geometries may be added by calling this method multiple times.
Any type of Geometry may be added. The constituent linework will be
extracted to be dissolved.geometry
- geometry to be line-mergedpublic void add(Collection geometries)
geometries
- the geometries to be line-mergedpublic Geometry getResult()
Copyright © 2022. All rights reserved.