MySQL 8.4.3
Source Code Documentation
|
Abstract superclass for all geometric objects. More...
#include <geometries.h>
Public Member Functions | |
Geometry ()=default | |
virtual | ~Geometry ()=default |
Geometry (const Geometry &)=default | |
Geometry & | operator= (const Geometry &)=default |
virtual Geometry * | clone () const =0 |
virtual Geometry_type | type () const =0 |
Gets the geometry type of the object. More... | |
virtual Coordinate_system | coordinate_system () const =0 |
Gets the coordinate system. More... | |
virtual bool | accept (Geometry_visitor *v)=0 |
Applies a hierarchical visitor to this geometry. More... | |
virtual bool | is_empty () const =0 |
Check if this is an empty geometry. More... | |
Abstract superclass for all geometric objects.
Geometry is a non-instantiable type in SQL.
The hierarchy is first divided into abstract classes according to the SFA-CA geometry type hierarchy, and then divided into concrete subclasses for each coordinate system.
|
default |
|
virtualdefault |
|
default |
|
pure virtual |
Applies a hierarchical visitor to this geometry.
v | A hierarchical visitor. |
true | The execution was aborted by the visitor. |
false | The execution completed. |
Implemented in gis::Point, gis::Cartesian_linestring, gis::Geographic_linestring, gis::Cartesian_linearring, gis::Geographic_linearring, gis::Cartesian_polygon, gis::Geographic_polygon, gis::Cartesian_geometrycollection, gis::Geographic_geometrycollection, gis::Cartesian_multipoint, gis::Geographic_multipoint, gis::Cartesian_multilinestring, gis::Geographic_multilinestring, gis::Cartesian_multipolygon, gis::Geographic_multipolygon, gis::Curve, gis::Linestring, gis::Linearring, gis::Surface, gis::Polygon, gis::Geometrycollection, gis::Multipoint, gis::Multicurve, gis::Multilinestring, gis::Multisurface, and gis::Multipolygon.
|
pure virtual |
Implemented in gis::Cartesian_point, gis::Geographic_point, gis::Cartesian_linestring, gis::Geographic_linestring, gis::Cartesian_linearring, gis::Geographic_linearring, gis::Cartesian_polygon, gis::Geographic_polygon, gis::Cartesian_geometrycollection, gis::Geographic_geometrycollection, gis::Cartesian_multipoint, gis::Geographic_multipoint, gis::Cartesian_multilinestring, gis::Geographic_multilinestring, gis::Cartesian_multipolygon, gis::Geographic_multipolygon, gis::Point, gis::Linestring, gis::Polygon, gis::Geometrycollection, gis::Multipoint, gis::Multilinestring, and gis::Multipolygon.
|
pure virtual |
Gets the coordinate system.
Implemented in gis::Cartesian_point, gis::Geographic_point, gis::Cartesian_linestring, gis::Geographic_linestring, gis::Cartesian_linearring, gis::Geographic_linearring, gis::Cartesian_polygon, gis::Geographic_polygon, gis::Cartesian_geometrycollection, gis::Geographic_geometrycollection, gis::Cartesian_multipoint, gis::Geographic_multipoint, gis::Cartesian_multilinestring, gis::Geographic_multilinestring, gis::Cartesian_multipolygon, and gis::Geographic_multipolygon.
|
pure virtual |
Check if this is an empty geometry.
The definition of empty geometries is the one in SFA-CA (OGC 06-103r4, Sect. 6.1.2.2), i.e., an empty point set.
true | The geometry represents the empty point set. |
false | The geometry represent a non-empty point set. |
Implemented in gis::Point, gis::Linestring, gis::Polygon, gis::Cartesian_linearring, gis::Geographic_linearring, gis::Cartesian_geometrycollection, gis::Geographic_geometrycollection, gis::Cartesian_multipoint, gis::Geographic_multipoint, gis::Cartesian_multilinestring, gis::Geographic_multilinestring, gis::Cartesian_multipolygon, and gis::Geographic_multipolygon.
|
pure virtual |
Gets the geometry type of the object.
Implemented in gis::Point, gis::Linestring, gis::Polygon, gis::Geometrycollection, gis::Multipoint, gis::Multilinestring, gis::Multipolygon, gis::Cartesian_linearring, gis::Geographic_linearring, gis::Curve, gis::Surface, gis::Multicurve, and gis::Multisurface.