MySQL 26.7.0
Source Code Documentation
gis::Length Class Reference

Length functor that calls Boost.Geometry with the correct parameter types. More...

#include <length_functor.h>

Inheritance diagram for gis::Length:
[legend]

Public Member Functions

 Length (double major, double minor)
 
double operator() (const Geometry &g1) const override
 
double eval (const Geometry &g1) const
 
double eval (const Geographic_linestring &g1) const
 
double eval (const Cartesian_linestring &g1) const
 
double eval (const Geographic_multilinestring &g1) const
 
double eval (const Cartesian_multilinestring &g1) const
 
- Public Member Functions inherited from gis::Unary_functor< double >
virtual ~Unary_functor ()=default
 

Private Attributes

std::unique_ptr< boost::geometry::strategy::distance::andoyer< boost::geometry::srs::spheroid< double > > > m_geographic_strategy
 

Additional Inherited Members

- Static Protected Member Functions inherited from gis::Unary_functor< double >
static double apply (F &f, const Geometry &g)
 

Detailed Description

Length functor that calls Boost.Geometry with the correct parameter types.

The functor throws exceptions and is therefore only intended used to implement length or other geographic functions. It should not be used directly by other MySQL code.

Constructor & Destructor Documentation

◆ Length()

gis::Length::Length ( double  major,
double  minor 
)

Member Function Documentation

◆ eval() [1/5]

double gis::Length::eval ( const Cartesian_linestring &  g1) const

◆ eval() [2/5]

double gis::Length::eval ( const Cartesian_multilinestring &  g1) const

◆ eval() [3/5]

double gis::Length::eval ( const Geographic_linestring &  g1) const

◆ eval() [4/5]

double gis::Length::eval ( const Geographic_multilinestring &  g1) const

◆ eval() [5/5]

double gis::Length::eval ( const Geometry &  g1) const

◆ operator()()

double gis::Length::operator() ( const Geometry &  g1) const
overridevirtual

Member Data Documentation

◆ m_geographic_strategy

std::unique_ptr<boost::geometry::strategy::distance::andoyer< boost::geometry::srs::spheroid<double> > > gis::Length::m_geographic_strategy
private

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