Class Polygonizer
- java.lang.Object
-
- org.locationtech.jts.operation.polygonize.Polygonizer
-
public class Polygonizer extends java.lang.Object
Polygonizes a set ofGeometry
s which contain linework that represents the edges of a planar graph. All types of Geometry are accepted as input; the constituent linework is extracted as the edges to be polygonized. The processed edges must be correctly noded; that is, they must only meet at their endpoints. Polygonization will accept incorrectly noded input but will not form polygons from non-noded edges, and reports them as errors.The Polygonizer reports the follow kinds of errors:
- Dangles - edges which have one or both ends which are not incident on another edge endpoint
- Cut Edges - edges which are connected at both ends but which do not form part of polygon
- Invalid Ring Lines - edges which form rings which are invalid (e.g. the component lines contain a self-intersection)
- Version:
- 1.7
-
-
Constructor Summary
Constructors Constructor Description Polygonizer()
Creates a polygonizer with the sameGeometryFactory
as the inputGeometry
s.Polygonizer(boolean extractOnlyPolygonal)
Creates a polygonizer and allow specifying if only polygons which form a valid polygonal geometry are to be extracted.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(java.util.Collection geomList)
Adds a collection of geometries to the edges to be polygonized.void
add(Geometry g)
Add aGeometry
to the edges to be polygonized.java.util.Collection
getCutEdges()
Gets the list of cut edges found during polygonization.java.util.Collection
getDangles()
Gets the list of dangling lines found during polygonization.Geometry
getGeometry()
Gets a geometry representing the polygons formed by the polygonization.java.util.Collection
getInvalidRingLines()
Gets the list of lines forming invalid rings found during polygonization.java.util.Collection
getPolygons()
Gets the list of polygons formed by the polygonization.void
setCheckRingsValid(boolean isCheckingRingsValid)
Allows disabling the valid ring checking, to optimize situations where invalid rings are not expected.
-
-
-
Constructor Detail
-
Polygonizer
public Polygonizer()
Creates a polygonizer with the sameGeometryFactory
as the inputGeometry
s. The output mask is#ALL_POLYS
.
-
Polygonizer
public Polygonizer(boolean extractOnlyPolygonal)
Creates a polygonizer and allow specifying if only polygons which form a valid polygonal geometry are to be extracted.- Parameters:
extractOnlyPolygonal
- true if only polygons which form a valid polygonal geometry are to be extracted
-
-
Method Detail
-
add
public void add(java.util.Collection geomList)
Adds a collection of geometries to the edges to be polygonized. May be called multiple times. Any dimension of Geometry may be added; the constituent linework will be extracted and used.- Parameters:
geomList
- a list ofGeometry
s with linework to be polygonized
-
add
public void add(Geometry g)
Add aGeometry
to the edges to be polygonized. May be called multiple times. Any dimension of Geometry may be added; the constituent linework will be extracted and used- Parameters:
g
- aGeometry
with linework to be polygonized
-
setCheckRingsValid
public void setCheckRingsValid(boolean isCheckingRingsValid)
Allows disabling the valid ring checking, to optimize situations where invalid rings are not expected.The default is
true
.- Parameters:
isCheckingRingsValid
- true if generated rings should be checked for validity
-
getPolygons
public java.util.Collection getPolygons()
Gets the list of polygons formed by the polygonization.- Returns:
- a collection of
Polygon
s
-
getGeometry
public Geometry getGeometry()
Gets a geometry representing the polygons formed by the polygonization. If a valid polygonal geometry was extracted the result is aPolygonal
geometry.- Returns:
- a geometry containing the polygons
-
getDangles
public java.util.Collection getDangles()
Gets the list of dangling lines found during polygonization.- Returns:
- a collection of the input
LineString
s which are dangles
-
getCutEdges
public java.util.Collection getCutEdges()
Gets the list of cut edges found during polygonization.- Returns:
- a collection of the input
LineString
s which are cut edges
-
getInvalidRingLines
public java.util.Collection getInvalidRingLines()
Gets the list of lines forming invalid rings found during polygonization.- Returns:
- a collection of the input
LineString
s which form invalid rings
-
-