MySQL 9.1.0
Source Code Documentation
|
Superclass for all spatial reference systems. More...
#include <srs.h>
Public Member Functions | |
Spatial_reference_system ()=default | |
Spatial_reference_system (const Spatial_reference_system &)=default | |
Spatial_reference_system (Spatial_reference_system &&)=default | |
virtual | ~Spatial_reference_system ()=default |
virtual Srs_type | srs_type () const =0 |
Get the type of spatial reference system: projected, geometric, etc. More... | |
virtual Spatial_reference_system * | clone ()=0 |
Clone the object. More... | |
virtual Axis_direction | axis_direction (const int axis) const =0 |
Retrieve the axis direction of the spatial reference system. More... | |
virtual double | angular_unit () const =0 |
Retrieve the angular unit relative to radians. More... | |
virtual double | linear_unit () const =0 |
Retrieve how long the unit of the spatial reference system is in meters. More... | |
virtual double | prime_meridian () const =0 |
Retrieve the prime meridian relative to Greenwich. More... | |
virtual bool | can_be_modified_to (const Spatial_reference_system &srs) const =0 |
Checks if this SRS can be changed to another SRS without causing computational incompatibilities. More... | |
virtual std::string | proj4_parameters () const |
Retrieve the proj4 parameter string. More... | |
virtual bool | has_towgs84 () const =0 |
Checks if this SRS has valid Bursa Wolf parameters. More... | |
virtual bool | is_wgs84_based () const =0 |
Checks if this SRS is WGS 84 or a projection based on WGS 84. More... | |
Superclass for all spatial reference systems.
|
default |
|
default |
|
default |
|
virtualdefault |
|
pure virtual |
Retrieve the angular unit relative to radians.
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.
|
pure virtual |
Retrieve the axis direction of the spatial reference system.
axis | axis number, zero indexed |
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.
|
pure virtual |
Checks if this SRS can be changed to another SRS without causing computational incompatibilities.
This means checking that all values in the two SRSs that affect computations are the same. The syntax of the SRS definitions may still vary, e.g., by using different names or by having different authority codes.
In some cases, e.g., unknown projection methods, we don't know how to compare the two SRSs. In that case, we fail by saying that the SRSs are not the same.
The operation is not commutative. The SRS parameter is allowed to have a TOWGS84 specification even though this object doesn't. The opposite is not necessarily true. If this object lacks TOWGS84 information, transformation operations are forbidden on this SRS. Adding that possibility changes what computations are available, but it doesn't change the result of any computation that can currently be done.
An SRS that is currently identified as WGS 84 may both add and remove TOWGS84 information as long as the parameters are all 0. Adding a non-all-zero TOWGS84 clause to a WGS 84 SRS is not allowed.
srs | The SRS to compare with. |
true | The two SRSs are semantically the same. |
false | The two SRSs are semantically different, or we don't know how to compare them. |
Implemented in gis::srs::Unknown_projected_srs, gis::srs::Popular_visualisation_pseudo_mercator_srs, gis::srs::Lambert_azimuthal_equal_area_spherical_srs, gis::srs::Equidistant_cylindrical_srs, gis::srs::Equidistant_cylindrical_spherical_srs, gis::srs::Krovak_north_orientated_srs, gis::srs::Krovak_modified_srs, gis::srs::Krovak_modified_north_orientated_srs, gis::srs::Lambert_conic_conformal_2sp_michigan_srs, gis::srs::Colombia_urban_srs, gis::srs::Lambert_conic_conformal_1sp_srs, gis::srs::Lambert_conic_conformal_2sp_srs, gis::srs::Lambert_conic_conformal_2sp_belgium_srs, gis::srs::Mercator_variant_a_srs, gis::srs::Mercator_variant_b_srs, gis::srs::Cassini_soldner_srs, gis::srs::Transverse_mercator_srs, gis::srs::Transverse_mercator_south_orientated_srs, gis::srs::Oblique_stereographic_srs, gis::srs::Polar_stereographic_variant_a_srs, gis::srs::New_zealand_map_grid_srs, gis::srs::Hotine_oblique_mercator_variant_a_srs, gis::srs::Laborde_oblique_mercator_srs, gis::srs::Hotine_oblique_mercator_variant_b_srs, gis::srs::Tunisia_mining_grid_srs, gis::srs::Lambert_conic_near_conformal_srs, gis::srs::American_polyconic_srs, gis::srs::Krovak_srs, gis::srs::Lambert_azimuthal_equal_area_srs, gis::srs::Albers_equal_area_srs, gis::srs::Transverse_mercator_zoned_grid_system_srs, gis::srs::Lambert_conic_conformal_west_orientated_srs, gis::srs::Bonne_south_orientated_srs, gis::srs::Polar_stereographic_variant_b_srs, gis::srs::Polar_stereographic_variant_c_srs, gis::srs::Guam_projection_srs, gis::srs::Modified_azimuthal_equidistant_srs, gis::srs::Hyperbolic_cassini_soldner_srs, gis::srs::Lambert_cylindrical_equal_area_spherical_srs, gis::srs::Lambert_cylindrical_equal_area_srs, and gis::srs::Geographic_srs.
|
pure virtual |
Clone the object.
Implemented in gis::srs::Geographic_srs, gis::srs::Unknown_projected_srs, gis::srs::Popular_visualisation_pseudo_mercator_srs, gis::srs::Lambert_azimuthal_equal_area_spherical_srs, gis::srs::Equidistant_cylindrical_srs, gis::srs::Equidistant_cylindrical_spherical_srs, gis::srs::Krovak_north_orientated_srs, gis::srs::Krovak_modified_srs, gis::srs::Krovak_modified_north_orientated_srs, gis::srs::Lambert_conic_conformal_2sp_michigan_srs, gis::srs::Colombia_urban_srs, gis::srs::Lambert_conic_conformal_1sp_srs, gis::srs::Lambert_conic_conformal_2sp_srs, gis::srs::Lambert_conic_conformal_2sp_belgium_srs, gis::srs::Mercator_variant_a_srs, gis::srs::Mercator_variant_b_srs, gis::srs::Cassini_soldner_srs, gis::srs::Transverse_mercator_srs, gis::srs::Transverse_mercator_south_orientated_srs, gis::srs::Oblique_stereographic_srs, gis::srs::Polar_stereographic_variant_a_srs, gis::srs::New_zealand_map_grid_srs, gis::srs::Hotine_oblique_mercator_variant_a_srs, gis::srs::Laborde_oblique_mercator_srs, gis::srs::Hotine_oblique_mercator_variant_b_srs, gis::srs::Tunisia_mining_grid_srs, gis::srs::Lambert_conic_near_conformal_srs, gis::srs::American_polyconic_srs, gis::srs::Krovak_srs, gis::srs::Lambert_azimuthal_equal_area_srs, gis::srs::Albers_equal_area_srs, gis::srs::Transverse_mercator_zoned_grid_system_srs, gis::srs::Lambert_conic_conformal_west_orientated_srs, gis::srs::Bonne_south_orientated_srs, gis::srs::Polar_stereographic_variant_b_srs, gis::srs::Polar_stereographic_variant_c_srs, gis::srs::Guam_projection_srs, gis::srs::Modified_azimuthal_equidistant_srs, gis::srs::Hyperbolic_cassini_soldner_srs, gis::srs::Lambert_cylindrical_equal_area_spherical_srs, and gis::srs::Lambert_cylindrical_equal_area_srs.
|
pure virtual |
Checks if this SRS has valid Bursa Wolf parameters.
true | Transformation parameters are specified. |
false | Transformation parameters are not specified. |
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.
|
pure virtual |
Checks if this SRS is WGS 84 or a projection based on WGS 84.
true | This SRS is WGS 84 or a projection of WGS 84. |
false | This SRS is neither WGS 84 or a projection of WGS 84. |
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.
|
pure virtual |
Retrieve how long the unit of the spatial reference system is in meters.
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.
|
pure virtual |
Retrieve the prime meridian relative to Greenwich.
The prime meridian is returned in the angular unit of the SRS. Positive numbers are East of Greenwich.
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.
|
inlinevirtual |
Retrieve the proj4 parameter string.
If the SRS can't be represented as a proj4 parameter string, an empty string is returned.
Reimplemented in gis::srs::Geographic_srs, gis::srs::Popular_visualisation_pseudo_mercator_srs, gis::srs::Lambert_azimuthal_equal_area_spherical_srs, gis::srs::Equidistant_cylindrical_srs, gis::srs::Equidistant_cylindrical_spherical_srs, gis::srs::Krovak_north_orientated_srs, gis::srs::Lambert_conic_conformal_2sp_michigan_srs, gis::srs::Colombia_urban_srs, gis::srs::Lambert_conic_conformal_1sp_srs, gis::srs::Lambert_conic_conformal_2sp_srs, gis::srs::Lambert_conic_conformal_2sp_belgium_srs, gis::srs::Mercator_variant_a_srs, gis::srs::Mercator_variant_b_srs, gis::srs::Cassini_soldner_srs, gis::srs::Transverse_mercator_srs, gis::srs::Transverse_mercator_south_orientated_srs, gis::srs::Oblique_stereographic_srs, gis::srs::Polar_stereographic_variant_a_srs, gis::srs::New_zealand_map_grid_srs, gis::srs::Hotine_oblique_mercator_variant_a_srs, gis::srs::Laborde_oblique_mercator_srs, gis::srs::Hotine_oblique_mercator_variant_b_srs, gis::srs::Lambert_conic_near_conformal_srs, gis::srs::American_polyconic_srs, gis::srs::Krovak_srs, gis::srs::Lambert_azimuthal_equal_area_srs, gis::srs::Albers_equal_area_srs, gis::srs::Transverse_mercator_zoned_grid_system_srs, gis::srs::Bonne_south_orientated_srs, gis::srs::Polar_stereographic_variant_b_srs, gis::srs::Polar_stereographic_variant_c_srs, gis::srs::Guam_projection_srs, gis::srs::Modified_azimuthal_equidistant_srs, gis::srs::Hyperbolic_cassini_soldner_srs, gis::srs::Lambert_cylindrical_equal_area_spherical_srs, and gis::srs::Lambert_cylindrical_equal_area_srs.
|
pure virtual |
Get the type of spatial reference system: projected, geometric, etc.
Implemented in gis::srs::Geographic_srs, and gis::srs::Projected_srs.