Main MRPT website > C++ reference
MRPT logo

conversions.h File Reference

#include <mrpt/utils/utils_defs.h>
#include <mrpt/math/lightweight_geom_data.h>
#include <mrpt/topography/link_pragmas.h>
Include dependency graph for conversions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mrpt::topography::TCoords
struct  mrpt::topography::TEllipsoid
struct  mrpt::topography::TGeodeticCoords
 A set of geodetic coordinates: latitude, longitude and height, defined over a given geoid (typically, WGS84). More...
struct  mrpt::topography::TDatum7Params
 Parameters for a topographic transfomation. More...
struct  mrpt::topography::TDatum7Params_TOPCON
struct  mrpt::topography::TDatum10Params
 Parameters for a topographic transfomation. More...
struct  mrpt::topography::TDatumHelmert2D
 Parameters for a topographic transfomation. More...
struct  mrpt::topography::TDatumHelmert2D_TOPCON
struct  mrpt::topography::TDatumHelmert3D
 Parameters for a topographic transfomation. More...
struct  mrpt::topography::TDatumHelmert3D_TOPCON
 Parameters for a topographic transfomation. More...
struct  mrpt::topography::TDatum1DTransf
 Parameters for a topographic transfomation. More...
struct  mrpt::topography::TDatumTransfInterpolation
 Parameters for a topographic transfomation. More...

Namespaces

namespace  mrpt
 

This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.


namespace  mrpt::topography
 

This namespace provides topography helper functions, coordinate transformations.


Functions

Topography coordinate conversion functions

=======================================================================

=======================================================================



void TOPO_IMPEXP mrpt::topography::geodeticToENU_WGS84 (const TGeodeticCoords &in_coords, mrpt::math::TPoint3D &out_ENU_point, const TGeodeticCoords &in_coords_origin)
 Coordinates transformation from longitude/latitude/height to ENU (East-North-Up) X/Y/Z coordinates The WGS84 ellipsoid is used for the transformation.
void TOPO_IMPEXP mrpt::topography::geodeticToGeocentric_WGS84 (const TGeodeticCoords &in_coords, mrpt::math::TPoint3D &out_point)
 Coordinates transformation from longitude/latitude/height to geocentric X/Y/Z coordinates (with a WGS84 geoid).
void TOPO_IMPEXP mrpt::topography::geodeticToGeocentric (const TGeodeticCoords &in_coords, TGeocentricCoords &out_point, const TEllipsoid &ellip)
 Coordinates transformation from longitude/latitude/height to geocentric X/Y/Z coordinates (with an specified geoid).
void TOPO_IMPEXP mrpt::topography::geocentricToGeodetic (const TGeocentricCoords &in_point, TGeodeticCoords &out_coords, const TEllipsoid &ellip=Ellipsoid_WGS84())
 Coordinates transformation from geocentric X/Y/Z coordinates to longitude/latitude/height.
void TOPO_IMPEXP mrpt::topography::transform7params (const mrpt::math::TPoint3D &in_point, const TDatum7Params &in_datum, mrpt::math::TPoint3D &out_point)
 7-parameter Bursa-Wolf transformation: [ X Y Z ]_WGS84 = [ dX dY dZ ] + ( 1 + dS ) [ 1 RZ -RY; -RZ 1 RX; RY -RX 1 ] [ X Y Z ]_local
void TOPO_IMPEXP mrpt::topography::transform7params_TOPCON (const mrpt::math::TPoint3D &in_point, const TDatum7Params_TOPCON &in_datum, mrpt::math::TPoint3D &out_point)
void TOPO_IMPEXP mrpt::topography::transform10params (const mrpt::math::TPoint3D &in_point, const TDatum10Params &in_datum, mrpt::math::TPoint3D &out_point)
 10-parameter Molodensky-Badekas transformation: [ X Y Z ]_WGS84 = [ dX dY dZ ] + ( 1 + dS ) [ 1 RZ -RY; -RZ 1 RX; RY -RX 1 ] [ X-Xp Y-Yp Z-Zp ]_local + [Xp Yp Zp]
void TOPO_IMPEXP mrpt::topography::transformHelmert2D (const mrpt::math::TPoint2D &p, const TDatumHelmert2D &d, mrpt::math::TPoint2D &o)
 Helmert 2D transformation: [ X Y ]_WGS84 = [ dX dY ] + ( 1 + dS ) [ cos(alpha) -sin(alpha); sin(alpha) cos(alpha) ] [ X-Xp Y-Yp Z-Zp ]_local + [Xp Yp Zp].
void TOPO_IMPEXP mrpt::topography::transformHelmert2D_TOPCON (const mrpt::math::TPoint2D &p, const TDatumHelmert2D_TOPCON &d, mrpt::math::TPoint2D &o)
void TOPO_IMPEXP mrpt::topography::transformHelmert3D (const mrpt::math::TPoint3D &p, const TDatumHelmert3D &d, mrpt::math::TPoint3D &o)
 Helmert3D transformation: [ X Y Z ]_WGS84 = [ dX dY dZ ] + ( 1 + dS ) [ 1 -RZ RY; RZ 1 -RX; -RY RX 1 ] [ X Y Z ]_local.
void TOPO_IMPEXP mrpt::topography::transformHelmert3D_TOPCON (const mrpt::math::TPoint3D &p, const TDatumHelmert3D_TOPCON &d, mrpt::math::TPoint3D &o)
void TOPO_IMPEXP mrpt::topography::transform1D (const mrpt::math::TPoint3D &p, const TDatum1DTransf &d, mrpt::math::TPoint3D &o)
 1D transformation: [ Z ]_WGS84 = (dy * X - dx * Y + Z)*(1+e)+DZ
void TOPO_IMPEXP mrpt::topography::transfInterpolation (const mrpt::math::TPoint3D &p, const TDatumTransfInterpolation &d, mrpt::math::TPoint3D &o)
 Interpolation: [ Z ]_WGS84 = (dy * X - dx * Y + Z)*(1+e)+DZ.
void TOPO_IMPEXP mrpt::topography::UTMToGeodetic (double X, double Y, int zone, char hem, double &out_lon, double &out_lat, TEllipsoid ellip=Ellipsoid_WGS84())
 Returns the Geodetic coordinates of the UTM input point.
void TOPO_IMPEXP mrpt::topography::UTMToGeodetic (const TUTMCoords &UTMCoords, const int &zone, const char &hem, TGeodeticCoords &GeodeticCoords, TEllipsoid ellip=Ellipsoid_WGS84())
 Returns the Geodetic coordinates of the UTM input point.
void TOPO_IMPEXP mrpt::topography::GeodeticToUTM (double in_latitude_degrees, double in_longitude_degrees, double &out_UTM_x, double &out_UTM_y, int &out_UTM_zone, char &out_UTM_latitude_band, TEllipsoid ellip=Ellipsoid_WGS84())
 Convert latitude and longitude coordinates into UTM coordinates, computing the corresponding UTM zone and latitude band.
void TOPO_IMPEXP mrpt::topography::geodeticToUTM (const TGeodeticCoords &GeodeticCoords, TUTMCoords &UTMCoords, int &UTMZone, char &UTMLatitudeBand, TEllipsoid ellip=Ellipsoid_WGS84())
void TOPO_IMPEXP mrpt::topography::GeodeticToUTM (const TGeodeticCoords &GeodeticCoords, TUTMCoords &UTMCoords, int &UTMZone, char &UTMLatitudeBand, TEllipsoid ellip=Ellipsoid_WGS84())
 Convert latitude and longitude coordinates into UTM coordinates, computing the corresponding UTM zone and latitude band.
DEPRECATED topography coordinate conversion functions

=======================================================================

=======================================================================



 mrpt::topography::MRPT_DECLARE_DEPRECATED_FUNCTION ("*DEPRECATED* Use geodeticToENU_WGS84 instead", void TOPO_IMPEXP coordinatesTransformation_WGS84(doublein_longitude_degrees, doublein_latitude_degrees, doublein_height_meters, double &out_x_meters, double &out_y_meters, double &out_z_meters, doublein_longitude_reference_degrees, doublein_latitude_reference_degrees, doublein_height_reference_meters))
 Coordinates transformation from longitude/latitude/height to ENU (East-North-Up) X/Y/Z coordinates The WGS84 ellipsoid is used for the transformation.
 mrpt::topography::MRPT_DECLARE_DEPRECATED_FUNCTION ("*DEPRECATED* Use geodeticToENU_WGS84 instead", void TOPO_IMPEXP coordinatesTransformation_WGS84_geocentric(doublein_longitude_degrees, doublein_latitude_degrees, doublein_height_meters, double &out_x_meters, double &out_y_meters, double &out_z_meters))
 Coordinates transformation from longitude/latitude/height to geocentric X/Y/Z coordinates (with a WGS84 geoid).
Miscellaneous

=======================================================================

=======================================================================



void TOPO_IMPEXP mrpt::topography::ENU_axes_from_WGS84 (double in_longitude_reference_degrees, double in_latitude_reference_degrees, double in_height_reference_meters, mrpt::math::TPose3D &out_ENU, bool only_angles=false)
 Returns the East-North-Up (ENU) coordinate system associated to the given point.
void mrpt::topography::ENU_axes_from_WGS84 (const TGeodeticCoords &in_coords, mrpt::math::TPose3D &out_ENU, bool only_angles=false)
 Returns the East-North-Up (ENU) coordinate system associated to the given point.

Data structures

=======================================================================



typedef mrpt::math::TPoint3D mrpt::topography::TUTMCoords
typedef mrpt::math::TPoint3D mrpt::topography::TGeocentricCoords
std::ostream & mrpt::topography::operator<< (std::ostream &out, const TCoords &o)
TEllipsoid mrpt::topography::Ellipsoid_WGS84 ()
TEllipsoid mrpt::topography::Ellipsoid_WGS72 ()
TEllipsoid mrpt::topography::Ellipsoid_WGS66 ()
TEllipsoid mrpt::topography::Ellipsoid_Walbeck_1817 ()
TEllipsoid mrpt::topography::Ellipsoid_Sudamericano_1969 ()
TEllipsoid mrpt::topography::Ellipsoid_Nuevo_Internacional_1967 ()
TEllipsoid mrpt::topography::Ellipsoid_Mercury_Modificado_1968 ()
TEllipsoid mrpt::topography::Ellipsoid_Mercury_1960 ()
TEllipsoid mrpt::topography::Ellipsoid_Krasovsky_1940 ()
TEllipsoid mrpt::topography::Ellipsoid_Internacional_1924 ()
TEllipsoid mrpt::topography::Ellipsoid_Internacional_1909 ()
TEllipsoid mrpt::topography::Ellipsoid_Hough_1960 ()
TEllipsoid mrpt::topography::Ellipsoid_Helmert_1906 ()
TEllipsoid mrpt::topography::Ellipsoid_Hayford_1909 ()
TEllipsoid mrpt::topography::Ellipsoid_GRS80 ()
TEllipsoid mrpt::topography::Ellipsoid_Fischer_1968 ()
TEllipsoid mrpt::topography::Ellipsoid_Fischer_1960 ()
TEllipsoid mrpt::topography::Ellipsoid_Clarke_1880 ()
TEllipsoid mrpt::topography::Ellipsoid_Clarke_1866 ()
TEllipsoid mrpt::topography::Ellipsoid_Bessel_1841 ()
TEllipsoid mrpt::topography::Ellipsoid_Airy_Modificado_1965 ()
TEllipsoid mrpt::topography::Ellipsoid_Airy_1830 ()
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines



Page generated by Doxygen 1.6.1 for MRPT 0.9.0 SVN: at Mon Jun 7 06:47:58 UTC 2010