MySQL 8.3.0
Source Code Documentation
gis::Multipolygon Class Referenceabstract

A collection of polygons. More...

#include <geometries.h>

Inheritance diagram for gis::Multipolygon:
[legend]

Public Member Functions

Geometry_type type () const override
 Gets the geometry type of the object. More...
 
bool accept (Geometry_visitor *v) override=0
 Applies a hierarchical visitor to this geometry. More...
 
Multipolygonclone () const override=0
 Clone pattern to easily duplicate a Multipolygon. More...
 
Polygonfront () override=0
 Returns the first polygon of the Multipolygon. More...
 
const Polygonfront () const override=0
 
- Public Member Functions inherited from gis::Geometrycollection
virtual void push_back (const Geometry &g)=0
 Adds a geometry to the collection. More...
 
virtual void push_back (Geometry &&g)=0
 
virtual void pop_front ()=0
 Removes a geometry from the front of the collection. More...
 
virtual bool empty () const =0
 Checks if the collection is empty. More...
 
virtual std::size_t size () const =0
 Returns the size of the geometrycollection. More...
 
virtual void resize (std::size_t count)=0
 Resizes the geometrycollection to contain a given number of elements. More...
 
virtual void clear () noexcept=0
 Removes all geometries from the geometrycollection. More...
 
virtual Geometryoperator[] (std::size_t i)=0
 
virtual const Geometryoperator[] (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...
 
virtual bool is_empty () const =0
 Check if this is an empty geometry. More...
 

Static Public Member Functions

static Multipolygoncreate_multipolygon (Coordinate_system coordinate_system)
 Creates a subclass of Multipolygon from a Coordinate_system. More...
 
- Static Public Member Functions inherited from gis::Geometrycollection
static GeometrycollectionCreateGeometrycollection (Coordinate_system coordinate_system)
 Creates a subclass of Geometrycollection from a Coordinate_system. More...
 
static Geometrycollectioncreate_geometrycollection (Coordinate_system coordinate_system)
 Creates a subclass from a Coordinate_system. More...
 

Detailed Description

A collection of polygons.

Multipolygon is an instantiable type in SQL.

Member Function Documentation

◆ accept()

bool gis::Multipolygon::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::Multisurface.

Implemented in gis::Cartesian_multipolygon, and gis::Geographic_multipolygon.

◆ clone()

Multipolygon * gis::Multipolygon::clone ( ) const
overridepure virtual

Clone pattern to easily duplicate a Multipolygon.

Returns
A pointer to a copy of the Multipolygon that caller must free when it is done with it.

Implements gis::Geometrycollection.

Implemented in gis::Cartesian_multipolygon, and gis::Geographic_multipolygon.

◆ create_multipolygon()

Multipolygon * gis::Multipolygon::create_multipolygon ( Coordinate_system  coordinate_system)
static

Creates a subclass of Multipolygon from a Coordinate_system.

Parameters
[in]coordinate_systemCoordinate system to create a Multipolygon for.
Returns
A pointer to a Multipolygon that caller must free when it is done with it.

◆ front() [1/2]

const Polygon & gis::Multipolygon::front ( ) const
overridepure virtual

◆ front() [2/2]

Polygon & gis::Multipolygon::front ( )
overridepure virtual

Returns the first polygon of the Multipolygon.

Returns
First polygon of the Multipolygon

Implements gis::Geometrycollection.

Implemented in gis::Cartesian_multipolygon, and gis::Geographic_multipolygon.

◆ type()

Geometry_type gis::Multipolygon::type ( ) const
inlineoverridevirtual

Gets the geometry type of the object.

Returns
The type of this object

Implements gis::Multisurface.


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