MySQL 8.0.46
Source Code Documentation
gis::Distance_sphere Class Reference

Functor that calls Boost.Geometry with the correct parameter types. More...

#include <distance_sphere_functor.h>

Inheritance diagram for gis::Distance_sphere:
[legend]

Public Member Functions

 Distance_sphere (double sphere_radius)
 
double operator() (const Geometry *g1, const Geometry *g2) const override
 
double eval (const Cartesian_point *g1, const Cartesian_point *g2) const
 
double eval (const Cartesian_point *g1, const Cartesian_multipoint *g2) const
 
double eval (const Cartesian_multipoint *g1, const Cartesian_point *g2) const
 
double eval (const Cartesian_multipoint *g1, const Cartesian_multipoint *g2) const
 
double eval (const Geographic_point *g1, const Geographic_point *g2) const
 
double eval (const Geographic_point *g1, const Geographic_multipoint *g2) const
 
double eval (const Geographic_multipoint *g1, const Geographic_point *g2) const
 
double eval (const Geographic_multipoint *g1, const Geographic_multipoint *g2) const
 
double eval (const Geometry *g1, const Geometry *g2) const
 
- Public Member Functions inherited from gis::Functor< double >
virtual ~Functor ()=default
 

Private Attributes

boost::geometry::strategy::distance::haversine< double > m_strategy
 

Additional Inherited Members

- Static Protected Member Functions inherited from gis::Functor< double >
static double apply (F &f, const Geometry *g1, const Geometry *g2)
 

Detailed Description

Functor that calls Boost.Geometry with the correct parameter types.

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

Constructor & Destructor Documentation

◆ Distance_sphere()

gis::Distance_sphere::Distance_sphere ( double  sphere_radius)
inline

Member Function Documentation

◆ eval() [1/9]

double gis::Distance_sphere::eval ( const Cartesian_multipoint *  g1,
const Cartesian_multipoint *  g2 
) const

◆ eval() [2/9]

double gis::Distance_sphere::eval ( const Cartesian_multipoint *  g1,
const Cartesian_point *  g2 
) const

◆ eval() [3/9]

double gis::Distance_sphere::eval ( const Cartesian_point *  g1,
const Cartesian_multipoint *  g2 
) const

◆ eval() [4/9]

double gis::Distance_sphere::eval ( const Cartesian_point *  g1,
const Cartesian_point *  g2 
) const

◆ eval() [5/9]

double gis::Distance_sphere::eval ( const Geographic_multipoint *  g1,
const Geographic_multipoint *  g2 
) const

◆ eval() [6/9]

double gis::Distance_sphere::eval ( const Geographic_multipoint *  g1,
const Geographic_point *  g2 
) const

◆ eval() [7/9]

double gis::Distance_sphere::eval ( const Geographic_point *  g1,
const Geographic_multipoint *  g2 
) const

◆ eval() [8/9]

double gis::Distance_sphere::eval ( const Geographic_point *  g1,
const Geographic_point *  g2 
) const

◆ eval() [9/9]

double gis::Distance_sphere::eval ( const Geometry *  g1,
const Geometry *  g2 
) const

◆ operator()()

double gis::Distance_sphere::operator() ( const Geometry *  g1,
const Geometry *  g2 
) const
overridevirtual

Member Data Documentation

◆ m_strategy

boost::geometry::strategy::distance::haversine<double> gis::Distance_sphere::m_strategy
private

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