![]() |
MySQL 8.0.43
Source Code Documentation
|
A geographic (ellipsoidal) 2d polygon. More...
#include <geometries_cs.h>
Public Member Functions | |
| Geographic_polygon () | |
| Coordinate_system | coordinate_system () const override |
| Gets the coordinate system. More... | |
| bool | accept (Geometry_visitor *v) override |
| Applies a hierarchical visitor to this geometry. More... | |
| void | push_back (const Linearring &lr) override |
| Adds a linear ring to the polygon. More... | |
| void | push_back (Linearring &&lr) override |
| bool | empty () const override |
| Checks if the polygon is empty. More... | |
| Geographic_polygon * | clone () const override |
| decltype(m_interior_rings) & | interior_rings () |
| Get list of interior rings. More... | |
| decltype(m_interior_rings) const & | const_interior_rings () const |
| Get list of interior rings. More... | |
| std::size_t | size () const override |
| Returns the size of the polygon. More... | |
| Geographic_linearring & | geographic_exterior_ring () const |
| Get the exterior ring. More... | |
| Linearring & | exterior_ring () override |
| Returns the exterior ring of the polygon. More... | |
| Linearring & | interior_ring (std::size_t n) override |
| Returns an interior ring of the polygon. More... | |
Public Member Functions inherited from gis::Polygon | |
| Geometry_type | type () const override |
| Gets the geometry type of the object. More... | |
| bool | is_empty () const override |
| Check if this is an empty geometry. More... | |
Public Member Functions inherited from gis::Geometry | |
| Geometry ()=default | |
| virtual | ~Geometry ()=default |
| Geometry (const Geometry &)=default | |
| Geometry & | operator= (const Geometry &)=default |
Private Attributes | |
| Geographic_linearring | m_exterior_ring |
| Exterior ring. More... | |
| std::vector< Geographic_linearring, Malloc_allocator< Geographic_linearring > > | m_interior_rings |
| Interior rings (holes). More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from gis::Polygon | |
| static Polygon * | create_polygon (Coordinate_system coordinate_system) |
| Creates a subclass of Polygon from a Coordinate_system. More... | |
A geographic (ellipsoidal) 2d polygon.
|
inline |
|
overridevirtual |
Applies a hierarchical visitor to this geometry.
| v | A hierarchical visitor. |
| true | The execution was aborted by the visitor. |
| false | The execution completed. |
Implements gis::Polygon.
|
inlineoverridevirtual |
Implements gis::Polygon.
| decltype(m_interior_rings) const & gis::Geographic_polygon::const_interior_rings | ( | ) | const |
Get list of interior rings.
This function is used by the interface to Boost.Geometry.
|
inlineoverridevirtual |
|
overridevirtual |
Checks if the polygon is empty.
The polygon is considered empty if it has no rings.
| true | The polygon is empty. |
| false | The polygon is not empty. |
Implements gis::Polygon.
|
inlineoverridevirtual |
Returns the exterior ring of the polygon.
Implements gis::Polygon.
| Geographic_linearring & gis::Geographic_polygon::geographic_exterior_ring | ( | ) | const |
Get the exterior ring.
This function is used by the interface to Boost.Geometry.
|
overridevirtual |
Returns an interior ring of the polygon.
| n | Ring number, zero indexed. |
Implements gis::Polygon.
| decltype(m_interior_rings) & gis::Geographic_polygon::interior_rings | ( | ) |
Get list of interior rings.
This function is used by the interface to Boost.Geometry.
|
overridevirtual |
Adds a linear ring to the polygon.
The first ring will become the exterior ring. All following rings will be interior rings (holes).
| lr | The linear ring to add. |
Implements gis::Polygon.
|
overridevirtual |
Implements gis::Polygon.
|
overridevirtual |
Returns the size of the polygon.
Implements gis::Polygon.
|
private |
Exterior ring.
|
private |
Interior rings (holes).