23#include <geos/export.h>
25#include <geos/operation/union/UnionStrategy.h>
103 std::vector<geom::Polygon*>* inputPolys;
113 static int const STRTREE_NODE_CAPACITY = 4;
129 static std::unique_ptr<geom::Geometry> restrictToPolygons(std::unique_ptr<geom::Geometry> g);
140 static std::unique_ptr<geom::Geometry>
Union(std::vector<geom::Polygon*>* polys);
141 static std::unique_ptr<geom::Geometry> Union(std::vector<geom::Polygon*>* polys,
UnionStrategy* unionFun);
152 static std::unique_ptr<geom::Geometry>
155 std::vector<geom::Polygon*> polys;
156 for(T i = start; i != end; ++i) {
160 return Union(&polys, unionStrategy);
180 , geomFactory(nullptr)
181 , unionFunction(&defaultUnionFunction)
186 , geomFactory(nullptr)
187 , unionFunction(unionFun)
196 std::unique_ptr<geom::Geometry>
Union();
212 std::unique_ptr<geom::Geometry> binaryUnion(
const std::vector<const geom::Geometry*> & geoms, std::size_t start, std::size_t end);
225 std::unique_ptr<geom::Geometry> unionSafe(std::unique_ptr<geom::Geometry> &&, std::unique_ptr<geom::Geometry> &&);
236 std::unique_ptr<geom::Geometry> unionActual(std::unique_ptr<geom::Geometry> &&, std::unique_ptr<geom::Geometry> &&)
const;
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
Definition: GeometryFactory.h:66
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:186
Definition: MultiPolygon.h:59
Represents a linear polygon, which may include holes.
Definition: Polygon.h:61
Provides an efficient method of unioning a collection of polygonal geometries.
Definition: CascadedPolygonUnion.h:101
CascadedPolygonUnion(std::vector< geom::Polygon * > *polys)
Creates a new instance to union the given collection of Geometrys.
Definition: CascadedPolygonUnion.h:178
static std::unique_ptr< geom::Geometry > Union(T start, T end, UnionStrategy *unionStrategy)
Computes the union of a set of polygonal Geometrys.
Definition: CascadedPolygonUnion.h:153
static std::unique_ptr< geom::Geometry > Union(std::vector< geom::Polygon * > *polys)
Computes the union of a collection of polygonal Geometrys.
std::unique_ptr< geom::Geometry > Union()
Computes the union of the input geometries.
static std::unique_ptr< 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:48
bool isFloatingPrecision() const override
std::unique_ptr< geom::Geometry > Union(const geom::Geometry *, const geom::Geometry *) override
Definition: UnionStrategy.h:40
Basic namespace for all GEOS functionalities.
Definition: geos.h:39