21 #include <geos/export.h>
22 #include <geos/geom/PrecisionModel.h>
23 #include <geos/operation/union/UnionStrategy.h>
24 #include <geos/operation/overlayng/OverlayNG.h>
71 static constexpr
int NUM_SNAP_TRIES = 5;
76 static constexpr
double SNAP_TOL_FACTOR = 1e12;
78 static std::unique_ptr<Geometry> overlaySnapping(
81 static std::unique_ptr<Geometry> overlaySnapBoth(
84 static std::unique_ptr<Geometry> overlaySnapTol(
87 static double snapTolerance(
const Geometry* geom);
96 static double ordinateMagnitude(
const Geometry* geom);
105 static std::unique_ptr<Geometry>
119 static std::unique_ptr<Geometry>
120 snapSelf(
const Geometry* geom,
double snapTol);
129 return OverlayNGRobust::Overlay(g0, g1, OverlayNG::UNION);
132 bool isFloatingPrecision()
const override
139 static std::unique_ptr<Geometry> Intersection(
142 static std::unique_ptr<Geometry> Union(
145 static std::unique_ptr<Geometry> Difference(
148 static std::unique_ptr<Geometry> SymDifference(
151 static std::unique_ptr<Geometry> Union(
154 static std::unique_ptr<Geometry> Overlay(
157 static std::unique_ptr<Geometry> overlaySnapTries(
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
Definition: Geometry.h:197
Definition: UnionStrategy.h:40
Definition: OverlayNGRobust.h:64
static double snapTolerance(const Geometry *geom0, const Geometry *geom1)
Basic namespace for all GEOS functionalities.
Definition: Angle.h:25