21 #include <geos/precision/CommonBitsRemover.h>
22 #include <geos/operation/overlayng/OverlayNG.h>
28 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
59 static std::unique_ptr<geom::Geometry>
63 return op.getResultGeometry(opCode);
66 static std::unique_ptr<geom::Geometry>
69 return overlayOp(g0, g1, overlayng::OverlayNG::INTERSECTION);
72 static std::unique_ptr<geom::Geometry>
75 return overlayOp(g0, g1, overlayng::OverlayNG::UNION);
78 static std::unique_ptr<geom::Geometry>
81 return overlayOp(g0, g1, overlayng::OverlayNG::DIFFERENCE);
84 static std::unique_ptr<geom::Geometry>
87 return overlayOp(g0, g1, overlayng::OverlayNG::SYMDIFFERENCE);
95 computeSnapTolerance();
98 std::unique_ptr<geom::Geometry> getResultGeometry(
int opCode);
102 void computeSnapTolerance();
104 void snap(geom::GeomPtrPair& ret);
108 geom::GeomPtrPair& ret);
117 double snapTolerance;
119 std::unique_ptr<precision::CommonBitsRemover> cbr;