MySQL 8.0.39
Source Code Documentation
gis::Cartesian_multilinestring Class Reference

A Cartesian 2d multilinestring. More...

#include <geometries_cs.h>

Inheritance diagram for gis::Cartesian_multilinestring:
[legend]

Public Types

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

Public Member Functions

 Cartesian_multilinestring ()
 
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...
 
Cartesian_linestringback ()
 
const Cartesian_linestringback () const
 
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
Cartesian_linestringfront () override
 Returns the first linestring of the Multilinestring. More...
 
const Cartesian_linestringfront () const override
 
Cartesian_linestringoperator[] (std::size_t i) override
 
const Geometryoperator[] (std::size_t i) const override
 
Cartesian_multilinestringclone () const override
 Clone pattern to easily duplicate a Multilinestring. More...
 
- Public Member Functions inherited from gis::Multilinestring
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_linestring, Malloc_allocator< Cartesian_linestring > > m_linestrings
 List of linestrings in the collection. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from gis::Multilinestring
static Multilinestringcreate_multilinestring (Coordinate_system coordinate_system)
 Creates a subclass of Multilinestring 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 multilinestring.

Member Typedef Documentation

◆ const_iterator

◆ iterator

◆ value_type

Constructor & Destructor Documentation

◆ Cartesian_multilinestring()

gis::Cartesian_multilinestring::Cartesian_multilinestring ( )
inline

Member Function Documentation

◆ accept()

bool gis::Cartesian_multilinestring::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::Multilinestring.

◆ back() [1/2]

Cartesian_linestring & gis::Cartesian_multilinestring::back ( )
inline

◆ back() [2/2]

const Cartesian_linestring & gis::Cartesian_multilinestring::back ( ) const
inline

◆ begin() [1/2]

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

◆ begin() [2/2]

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

◆ clear()

void gis::Cartesian_multilinestring::clear ( )
inlineoverridevirtualnoexcept

Removes all geometries from the geometrycollection.

Implements gis::Geometrycollection.

◆ clone()

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

Clone pattern to easily duplicate a Multilinestring.

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

Implements gis::Multilinestring.

◆ coordinate_system()

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

Gets the coordinate system.

Returns
The coordinate system type.

Implements gis::Geometry.

◆ empty()

bool gis::Cartesian_multilinestring::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_multilinestring::end ( void  ) const
inlinenoexcept

◆ end() [2/2]

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

◆ front() [1/2]

const Cartesian_linestring & gis::Cartesian_multilinestring::front ( ) const
inlineoverridevirtual

Implements gis::Multilinestring.

◆ front() [2/2]

Cartesian_linestring & gis::Cartesian_multilinestring::front ( )
inlineoverridevirtual

Returns the first linestring of the Multilinestring.

Returns
First linestring of the Multilinestring

Implements gis::Multilinestring.

◆ is_empty()

bool gis::Cartesian_multilinestring::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 Geometry & gis::Cartesian_multilinestring::operator[] ( std::size_t  i) const
inlineoverridevirtual

◆ operator[]() [2/2]

Cartesian_linestring & gis::Cartesian_multilinestring::operator[] ( std::size_t  i)
inlineoverridevirtual

◆ pop_front()

void gis::Cartesian_multilinestring::pop_front ( )
inlineoverridevirtual

Removes a geometry from the front of the collection.

Implements gis::Geometrycollection.

◆ push_back() [1/2]

void gis::Cartesian_multilinestring::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_multilinestring::push_back ( Geometry &&  g)
overridevirtual

◆ resize()

void gis::Cartesian_multilinestring::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_multilinestring::size ( ) const
inlineoverridevirtual

Returns the size of the geometrycollection.

Returns
Number of geometries in the geometrycollection.

Implements gis::Geometrycollection.

Member Data Documentation

◆ m_linestrings

std::vector<Cartesian_linestring, Malloc_allocator<Cartesian_linestring> > gis::Cartesian_multilinestring::m_linestrings
private

List of linestrings in the collection.


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