/********************************************************************** * * GEOS - Geometry Engine Open Source * http://geos.osgeo.org * * Copyright (C) 2011 Sandro Santilli #include #include // Forward declarations namespace geos { namespace geom { class GeometryFactory; class Geometry; } } namespace geos { namespace operation { // geos::operation namespace geounion { // geos::operation::geounion /** * \brief * Computes the union of a puntal geometry with another * arbitrary [Geometry](@ref geom::Geometry). * * Does not copy any component geometries. * */ class GEOS_DLL PointGeometryUnion { public: static std::unique_ptr Union( const geom::Geometry& pointGeom, const geom::Geometry& otherGeom); PointGeometryUnion(const geom::Geometry& pointGeom, const geom::Geometry& otherGeom); std::unique_ptr Union() const; private: const geom::Geometry& pointGeom; const geom::Geometry& otherGeom; const geom::GeometryFactory* geomFact; // Declared as non-copyable PointGeometryUnion(const PointGeometryUnion& other); PointGeometryUnion& operator=(const PointGeometryUnion& rhs); }; } // namespace geos::operation::union } // namespace geos::operation } // namespace geos