21 #ifndef GEOS_OP_UNION_CASCADEDPOLYGONUNION_H 22 #define GEOS_OP_UNION_CASCADEDPOLYGONUNION_H 36 class GeometryFactory;
81 bool isFloatingPrecision()
const override;
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) {
169 polys.push_back(const_cast<geom::Polygon*>(p));
171 return Union(&polys, unionStrategy);
191 , geomFactory(nullptr)
192 , unionFunction(&defaultUnionFunction)
197 , geomFactory(nullptr)
198 , unionFunction(unionFun)
ClassicUnionStrategy defaultUnionFunction
CascadedPolygonUnion(std::vector< geom::Polygon * > *polys)
Creates a new instance to union the given collection of Geometrys.
Implementation of UnionStrategy that provides overlay using the first generation overlay routines...
std::vector< geom::Polygon * > * inputPolys
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Represents a linear polygon, which may include holes.
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Basic namespace for all GEOS functionalities.
UnionStrategy * unionFunction
Provides an efficient method of unioning a collection of polygonal geometries.
Helper class holding Geometries, part of which are held by reference others are held exclusively...
geom::GeometryFactory const * geomFactory
CascadedPolygonUnion(std::vector< geom::Polygon * > *polys, UnionStrategy *unionFun)
static geom::Geometry * Union(T start, T end, UnionStrategy *unionStrategy)
Computes the union of a set of polygonal Geometrys.