MySQL 8.0.39
Source Code Documentation
|
Transform functor that calls Boost.Geometry with the correct parameter types. More...
#include <transform_functor.h>
Public Member Functions | |
Transform (const std::string &old_srs_params, const std::string &new_srs_params, Coordinate_system output_cs) | |
Create a new transform functor. More... | |
std::unique_ptr< Geometry > | operator() (const Geometry &g) const override |
std::unique_ptr< Geometry > | eval (const Geometry &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_point &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_point &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_linestring &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_linestring &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_polygon &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_polygon &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_geometrycollection &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_geometrycollection &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_multipoint &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_multipoint &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_multilinestring &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_multilinestring &g) const |
std::unique_ptr< Geometry > | eval (const Cartesian_multipolygon &g) const |
std::unique_ptr< Geometry > | eval (const Geographic_multipolygon &g) const |
Public Member Functions inherited from gis::Unary_functor< std::unique_ptr< Geometry > > | |
virtual | ~Unary_functor ()=default |
Private Attributes | |
boost::geometry::srs::transformation | m_transformation |
The transformation object that holds information about input and output definitions. More... | |
Coordinate_system | m_output_cs |
Coordinate system of the output SRS. More... | |
Additional Inherited Members | |
Static Protected Member Functions inherited from gis::Unary_functor< std::unique_ptr< Geometry > > | |
static std::unique_ptr< Geometry > | apply (F &f, const Geometry &g) |
Transform functor that calls Boost.Geometry with the correct parameter types.
The functor throws exceptions and is therefore only intended used to implement transform or other geographic functions. It should not be used directly by other MySQL code.
gis::Transform::Transform | ( | const std::string & | old_srs_params, |
const std::string & | new_srs_params, | ||
Coordinate_system | output_cs | ||
) |
Create a new transform functor.
Theoretically, we could deduce the coordinate system of the output SRS from the old_srs_param proj4 string, but it's easier to get it from the DD SRS object on the caller side.
[in] | old_srs_params | The proj4 parameters of the input SRS. |
[in] | new_srs_params | The proj4 parameters of the output SRS. |
[in] | output_cs | The coordinate system of the output SRS. |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_geometrycollection & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_linestring & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_multilinestring & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_multipoint & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_multipolygon & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_point & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Cartesian_polygon & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_geometrycollection & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_linestring & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_multilinestring & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_multipoint & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_multipolygon & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_point & | g | ) | const |
std::unique_ptr< Geometry > gis::Transform::eval | ( | const Geographic_polygon & | g | ) | const |
|
private |
Coordinate system of the output SRS.
|
private |
The transformation object that holds information about input and output definitions.