Class Polygonizer
- java.lang.Object
-
- org.locationtech.jts.operation.polygonize.Polygonizer
-
public class Polygonizer extends java.lang.ObjectPolygonizes a set ofGeometrys 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 sameGeometryFactoryas the inputGeometrys.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 voidadd(java.util.Collection geomList)Adds a collection of geometries to the edges to be polygonized.voidadd(Geometry g)Add aGeometryto the edges to be polygonized.java.util.CollectiongetCutEdges()Gets the list of cut edges found during polygonization.java.util.CollectiongetDangles()Gets the list of dangling lines found during polygonization.GeometrygetGeometry()Gets a geometry representing the polygons formed by the polygonization.java.util.CollectiongetInvalidRingLines()Gets the list of lines forming invalid rings found during polygonization.java.util.CollectiongetPolygons()Gets the list of polygons formed by the polygonization.voidsetCheckRingsValid(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 sameGeometryFactoryas the inputGeometrys. 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 ofGeometrys with linework to be polygonized
-
add
public void add(Geometry g)
Add aGeometryto 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- aGeometrywith 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
Polygons
-
getGeometry
public Geometry getGeometry()
Gets a geometry representing the polygons formed by the polygonization. If a valid polygonal geometry was extracted the result is aPolygonalgeometry.- 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
LineStrings which are dangles
-
getCutEdges
public java.util.Collection getCutEdges()
Gets the list of cut edges found during polygonization.- Returns:
- a collection of the input
LineStrings 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
LineStrings which form invalid rings
-
-