17#include <geos/geom/LineSegment.h>
18#include <geos/geom/Geometry.h>
27 class GeometryFactory;
35 class GEOS_DLL CoverageUnion {
45 static std::unique_ptr<Geometry> Union(
const Geometry* geom);
48 CoverageUnion() =
default;
50 void extractRings(
const Polygon* geom);
51 void extractRings(
const Geometry* geom);
52 void extractSegments(
const LineString* geom);
55 std::unique_ptr<Geometry> polygonize(
const GeometryFactory* gf);
57 std::vector<const LinearRing*> rings;
59 LineSegment::UnorderedSet segments;
60 static constexpr double AREA_PCT_DIFF_TOL = 1e-6;
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition GeometryFactory.h:70
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition Geometry.h:197
Definition LineSegment.h:61
Definition LineString.h:66
Models an OGC SFS LinearRing. A LinearRing is a LineString which is both closed and simple.
Definition LinearRing.h:54
Represents a linear polygon, which may include holes.
Definition Polygon.h:61
Basic namespace for all GEOS functionalities.
Definition geos.h:39