MySQL 9.0.0
Source Code Documentation
gis::Cartesian_multipoint Class Reference

A Cartesian 2d multipoint. More...

#include <geometries_cs.h>

Inheritance diagram for gis::Cartesian_multipoint:
[legend]

Public Types

typedef decltype(m_points) ::value_type value_type
 
typedef decltype(m_points) ::iterator iterator
 
typedef decltype(m_points) ::const_iterator const_iterator
 

Public Member Functions

 Cartesian_multipoint ()
 
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...
 
bool is_empty () const override
 Check if this is an empty geometry. More...
 
void pop_front () override
 Removes a geometry from the front of the collection. More...
 
void push_back (const Geometry &g) override
 Adds a geometry to the collection. More...
 
void push_back (Geometry &&g) override
 
bool empty () const override
 Checks if the collection is empty. More...
 
std::size_t size () const override
 Returns the size of the geometrycollection. More...
 
void resize (std::size_t count) override
 Resizes the geometrycollection to contain a given number of elements. More...
 
void clear () noexcept override
 Removes all geometries from the geometrycollection. More...
 
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
Cartesian_pointfront () override
 Returns the first point of the Multipoint. More...
 
const Cartesian_pointfront () const override
 
Cartesian_pointoperator[] (std::size_t i) override
 
const Cartesian_pointoperator[] (std::size_t i) const override
 
Cartesian_multipointclone () const override
 Clone pattern to easily duplicate a Multipoint. More...
 
- Public Member Functions inherited from gis::Multipoint
Geometry_type type () const override
 Gets the geometry type of the object. More...
 
- Public Member Functions inherited from gis::Geometry
 Geometry ()=default
 
virtual ~Geometry ()=default
 
 Geometry (const Geometry &)=default
 
Geometryoperator= (const Geometry &)=default
 

Private Attributes

std::vector< Cartesian_point, Malloc_allocator< Cartesian_point > > m_points
 List of points in the collection. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from gis::Multipoint
static Multipointcreate_multipoint (Coordinate_system coordinate_system)
 Creates a subclass of Multipoint 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 Cartesian 2d multipoint.

Member Typedef Documentation

◆ const_iterator

◆ iterator

◆ value_type

Constructor & Destructor Documentation

◆ Cartesian_multipoint()

gis::Cartesian_multipoint::Cartesian_multipoint ( )
inline

Member Function Documentation

◆ accept()

bool gis::Cartesian_multipoint::accept ( Geometry_visitor v)
overridevirtual

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::Multipoint.

◆ begin() [1/2]

const_iterator gis::Cartesian_multipoint::begin ( void  ) const
inlinenoexcept

◆ begin() [2/2]

iterator gis::Cartesian_multipoint::begin ( void  )
inlinenoexcept

◆ clear()

void gis::Cartesian_multipoint::clear ( )
inlineoverridevirtualnoexcept

Removes all geometries from the geometrycollection.

Implements gis::Geometrycollection.

◆ clone()

Cartesian_multipoint * gis::Cartesian_multipoint::clone ( ) const
inlineoverridevirtual

Clone pattern to easily duplicate a Multipoint.

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

Implements gis::Multipoint.

◆ coordinate_system()

Coordinate_system gis::Cartesian_multipoint::coordinate_system ( ) const
inlineoverridevirtual

Gets the coordinate system.

Returns
The coordinate system type.

Implements gis::Geometry.

◆ empty()

bool gis::Cartesian_multipoint::empty ( ) const
overridevirtual

Checks if the collection is empty.

Return values
trueThe polygon is empty.
falseThe polygon is not empty.

Implements gis::Geometrycollection.

◆ end() [1/2]

const_iterator gis::Cartesian_multipoint::end ( void  ) const
inlinenoexcept

◆ end() [2/2]

iterator gis::Cartesian_multipoint::end ( void  )
inlinenoexcept

◆ front() [1/2]

const Cartesian_point & gis::Cartesian_multipoint::front ( ) const
inlineoverridevirtual

Implements gis::Multipoint.

◆ front() [2/2]

Cartesian_point & gis::Cartesian_multipoint::front ( )
inlineoverridevirtual

Returns the first point of the Multipoint.

Returns
First point of the Multipoint

Implements gis::Multipoint.

◆ is_empty()

bool gis::Cartesian_multipoint::is_empty ( ) const
inlineoverridevirtual

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.

Note
This is different from the function "empty", which returns true if a geometry contains no subgeometries. E.g., a geometry collection may contain another geometry collection which is empty. In this case, the "empty" function would return false on the outermost geometry collection, while "is_empty" would return true.
Return values
trueThe geometry represents the empty point set.
falseThe geometry represent a non-empty point set.

Implements gis::Geometry.

◆ operator[]() [1/2]

const Cartesian_point & gis::Cartesian_multipoint::operator[] ( std::size_t  i) const
inlineoverridevirtual

◆ operator[]() [2/2]

Cartesian_point & gis::Cartesian_multipoint::operator[] ( std::size_t  i)
inlineoverridevirtual

◆ pop_front()

void gis::Cartesian_multipoint::pop_front ( )
inlineoverridevirtual

Removes a geometry from the front of the collection.

Implements gis::Geometrycollection.

◆ push_back() [1/2]

void gis::Cartesian_multipoint::push_back ( const Geometry g)
overridevirtual

Adds a geometry to the collection.

Parameters
gThe geometry to add.

Implements gis::Geometrycollection.

◆ push_back() [2/2]

void gis::Cartesian_multipoint::push_back ( Geometry &&  g)
overridevirtual

◆ resize()

void gis::Cartesian_multipoint::resize ( std::size_t  count)
inlineoverridevirtual

Resizes the geometrycollection to contain a given number of elements.

If the new size is smaller than the current size, the remaining geometries are discarded.

Parameters
[in]countThe new number of geometries.

Implements gis::Geometrycollection.

◆ size()

std::size_t gis::Cartesian_multipoint::size ( ) const
inlineoverridevirtual

Returns the size of the geometrycollection.

Returns
Number of geometries in the geometrycollection.

Implements gis::Geometrycollection.

Member Data Documentation

◆ m_points

std::vector<Cartesian_point, Malloc_allocator<Cartesian_point> > gis::Cartesian_multipoint::m_points
private

List of points in the collection.


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