1#ifndef SQL_GIS_GC_UTILS_H_INCLUDED
2#define SQL_GIS_GC_UTILS_H_INCLUDED
64 std::unique_ptr<Multilinestring> *mls,
65 std::unique_ptr<Multipolygon> *mpy);
81void gc_union(
double semi_major,
double semi_minor,
82 std::unique_ptr<Multipoint> *mpt,
83 std::unique_ptr<Multilinestring> *mls,
84 std::unique_ptr<Multipolygon> *mpy);
95 std::unique_ptr<Geometrycollection> geometrycollection);
A collection of geometries.
Definition: geometries.h:410
Invalid geometry exception.
Definition: gc_utils.h:45
Too large polygon exception.
Definition: gc_utils.h:51
This file declares the difference functor interface.
This file declares the geometry class hierarchy used by the server as the internal representation of ...
std::unique_ptr< gis::Geometrycollection > narrowest_multigeometry(std::unique_ptr< gis::Geometrycollection > geometrycollection)
Narrows down a geometrycollection to return a Multipoint, Multilinestring or a Multipolygon if the fi...
Definition: gc_utils.cc:213
void gc_union(double semi_major, double semi_minor, std::unique_ptr< Multipoint > *mpt, std::unique_ptr< Multilinestring > *mls, std::unique_ptr< Multipolygon > *mpy)
Cleans up overlapping geometries so that the geometrycollection is broken down into non-overlapping c...
Definition: gc_utils.cc:178
void split_gc(const Geometrycollection *gc, std::unique_ptr< Multipoint > *mpt, std::unique_ptr< Multilinestring > *mls, std::unique_ptr< Multipolygon > *mpy)
Splits a geometrycollection into points, linestrings and polygons.
Definition: gc_utils.cc:92
This file declares the union functor interface.