MySQL  8.0.22
Source Code Documentation
gis::Linearring Class Referenceabstract

A ring-shaped linestring. More...

#include <geometries.h>

Inheritance diagram for gis::Linearring:
gis::Linestring gis::Curve gis::Geometry gis::Cartesian_linearring gis::Geographic_linearring

Public Member Functions

bool accept (Geometry_visitor *v) override=0
 Applies a hierarchical visitor to this geometry. More...
 
- Public Member Functions inherited from gis::Linestring
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...
 
virtual void push_back (const Point &pt)=0
 Adds a point to the end of the linestring. More...
 
virtual void push_back (Point &&pt)=0
 
virtual bool empty () const =0
 Checks if the linestring is empty. More...
 
virtual std::size_t size () const =0
 Returns the size of (number of points in) the linestring. More...
 
virtual void clear () noexcept=0
 Removes all points from the linestring. More...
 
virtual Pointoperator[] (std::size_t i)=0
 
virtual const Pointoperator[] (std::size_t i) const =0
 
- Public Member Functions inherited from gis::Geometry
 Geometry ()=default
 
virtual ~Geometry ()=default
 
 Geometry (const Geometry &)=default
 
Geometryoperator= (const Geometry &)=default
 
virtual Coordinate_system coordinate_system () const =0
 Gets the coordinate system. More...
 

Detailed Description

A ring-shaped linestring.

Linearring is a non-instantiable type in SQL. It is used to represent polygon rings.

The start and end point of the linestring must be the same (assumed, but not enforced, by the implementation).

Member Function Documentation

◆ accept()

bool gis::Linearring::accept ( Geometry_visitor v)
overridepure virtual

Applies a hierarchical visitor to this geometry.

See also
gis::Geometry_visitor
Parameters
vA hierarchical visitor.
Return values
trueThe execution was aborted by the visitor.
falseThe execution completed.

Implements gis::Linestring.

Implemented in gis::Geographic_linearring, and gis::Cartesian_linearring.


The documentation for this class was generated from the following file: