21 #ifndef GEOS_OP_UNION_CASCADEDPOLYGONUNION_H
22 #define GEOS_OP_UNION_CASCADEDPOLYGONUNION_H
24 #include <geos/export.h>
30 #include <geos/operation/union/GeometryListHolder.h>
31 #include <geos/operation/union/UnionStrategy.h>
36 class GeometryFactory;
114 std::vector<geom::Polygon*>* inputPolys;
124 static int const STRTREE_NODE_CAPACITY = 4;
140 static std::unique_ptr<geom::Geometry> restrictToPolygons(std::unique_ptr<geom::Geometry> g);
166 std::vector<geom::Polygon*> polys;
167 for(T i = start; i != end; ++i) {
171 return Union(&polys, unionStrategy);
191 , geomFactory(nullptr)
192 , unionFunction(&defaultUnionFunction)
197 , geomFactory(nullptr)
198 , unionFunction(unionFun)
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:68
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:188
Definition: MultiPolygon.h:59
Represents a linear polygon, which may include holes.
Definition: Polygon.h:64
Provides an efficient method of unioning a collection of polygonal geometries.
Definition: CascadedPolygonUnion.h:112
CascadedPolygonUnion(std::vector< geom::Polygon * > *polys)
Creates a new instance to union the given collection of Geometrys.
Definition: CascadedPolygonUnion.h:189
static geom::Geometry * Union(T start, T end, UnionStrategy *unionStrategy)
Computes the union of a set of polygonal Geometrys.
Definition: CascadedPolygonUnion.h:164
static geom::Geometry * Union(std::vector< geom::Polygon * > *polys)
Computes the union of a collection of polygonal Geometrys.
geom::Geometry * Union()
Computes the union of the input geometries.
static geom::Geometry * Union(const geom::MultiPolygon *polys)
Computes the union of a collection of polygonal Geometrys.
Implementation of UnionStrategy that provides overlay using the first generation overlay routines.
Definition: CascadedPolygonUnion.h:59
bool isFloatingPrecision() const override
std::unique_ptr< geom::Geometry > Union(const geom::Geometry *, const geom::Geometry *) override
Helper class holding Geometries, part of which are held by reference others are held exclusively.
Definition: GeometryListHolder.h:34
Definition: UnionStrategy.h:40
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:26