19 #ifndef GEOS_OP_OVERLAY_SNAP_SNAPIFNEEDEDOVERLAYOP_H 20 #define GEOS_OP_OVERLAY_SNAP_SNAPIFNEEDEDOVERLAYOP_H 51 static std::unique_ptr<geom::Geometry>
59 static std::unique_ptr<geom::Geometry>
62 return overlayOp(g0, g1, OverlayOp::opINTERSECTION);
65 static std::unique_ptr<geom::Geometry>
68 return overlayOp(g0, g1, OverlayOp::opUNION);
71 static std::unique_ptr<geom::Geometry>
74 return overlayOp(g0, g1, OverlayOp::opDIFFERENCE);
77 static std::unique_ptr<geom::Geometry>
80 return overlayOp(g0, g1, OverlayOp::opSYMDIFFERENCE);
91 typedef std::unique_ptr<geom::Geometry>
GeomPtr;
111 #endif // ndef GEOS_OP_OVERLAY_SNAP_SNAPIFNEEDEDOVERLAYOP_H SnapIfNeededOverlayOp(const geom::Geometry &g1, const geom::Geometry &g2)
static std::unique_ptr< geom::Geometry > overlayOp(const geom::Geometry &g0, const geom::Geometry &g1, OverlayOp::OpCode opCode)
const geom::Geometry & geom0
GeomPtr getResultGeometry(OverlayOp::OpCode opCode)
OpCode
The spatial functions supported by this class.
Performs an overlay operation using snapping and enhanced precision to improve the robustness of the ...
Basic implementation of Geometry, constructed and destructed by GeometryFactory.
static std::unique_ptr< geom::Geometry > symDifference(const geom::Geometry &g0, const geom::Geometry &g1)
std::unique_ptr< geom::Geometry > GeomPtr
const geom::Geometry & geom1
Basic namespace for all GEOS functionalities.
static std::unique_ptr< geom::Geometry > difference(const geom::Geometry &g0, const geom::Geometry &g1)
static std::unique_ptr< geom::Geometry > Union(const geom::Geometry &g0, const geom::Geometry &g1)
static std::unique_ptr< geom::Geometry > intersection(const geom::Geometry &g0, const geom::Geometry &g1)