19 #ifndef GEOS_OP_UNION_OVERLAPUNION_H 20 #define GEOS_OP_UNION_OVERLAPUNION_H 26 #include <unordered_set> 104 , unionFunction(unionFun)
105 , geomFactory(p_g0->getFactory())
114 std::unique_ptr<geom::Geometry> doUnion();
127 std::unique_ptr<geom::Geometry> extractByEnvelope(
const geom::Envelope& env,
const geom::Geometry* geom, std::vector<std::unique_ptr<geom::Geometry>>& disjointGeoms);
128 std::unique_ptr<geom::Geometry> combine(std::unique_ptr<geom::Geometry>& unionGeom, std::vector<std::unique_ptr<geom::Geometry>>& disjointPolys);
132 bool isEqual(std::vector<geom::LineSegment>& segs0, std::vector<geom::LineSegment>& segs1);
geounion::UnionStrategy * unionFunction
An Envelope defines a rectangulare region of the 2D coordinate plane.
geounion::ClassicUnionStrategy defaultUnionFunction
Implementation of UnionStrategy that provides overlay using the first generation overlay routines...
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Unions MultiPolygons efficiently by using full topological union only for polygons which may overlap ...
const geom::GeometryFactory * geomFactory
OverlapUnion(const geom::Geometry *p_g0, const geom::Geometry *p_g1, geounion::UnionStrategy *unionFun)
Supplies a set of utility methods for building Geometry objects from CoordinateSequence or other Geom...
const geom::Geometry * g1
Basic namespace for all GEOS functionalities.
OverlapUnion(const geom::Geometry *p_g0, const geom::Geometry *p_g1)
const geom::Geometry * g0