ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
adore::mad::CoordinateConversion Class Reference

#include <coordinateconversion.h>

Collaboration diagram for adore::mad::CoordinateConversion:
Collaboration graph

Static Public Member Functions

static int LatLonToUTMXY (double lat, double lon, int zone, double &x, double &y)
 
static void UTMXYToLatLon (double x, double y, int zone, bool southhemi, double &lat, double &lon)
 
static void UTMXYToLatLonDegree (double x, double y, int zone, bool southhemi, double &lat, double &lon)
 
static double DegToRad (double deg)
 
static double RadToDeg (double rad)
 
static double twoPIrange (double rad)
 
static int LatLonToUTMXY (double lat, double lon, int zone, double &x, double &y)
 
static void UTMXYToLatLon (double x, double y, int zone, bool southhemi, double &lat, double &lon)
 
static void UTMXYToLatLonDegree (double x, double y, int zone, bool southhemi, double &lat, double &lon)
 
static double DegToRad (double deg)
 
static double RadToDeg (double rad)
 
static double twoPIrange (double rad)
 

Static Private Member Functions

static double ArcLengthOfMeridian (double phi)
 
static double UTMCentralMeridian (int zone)
 
static double FootpointLatitude (double y)
 
static void MapLatLonToXY (double phi, double lambda, double lambda0, double &x, double &y)
 
static void MapXYToLatLon (double x, double y, double lambda0, double &phi, double &lambda)
 
static double ArcLengthOfMeridian (double phi)
 
static double UTMCentralMeridian (int zone)
 
static double FootpointLatitude (double y)
 
static void MapLatLonToXY (double phi, double lambda, double lambda0, double &x, double &y)
 
static void MapXYToLatLon (double x, double y, double lambda0, double &phi, double &lambda)
 

Member Function Documentation

◆ ArcLengthOfMeridian() [1/2]

static double adore::mad::CoordinateConversion::ArcLengthOfMeridian ( double  phi)
staticprivate

◆ ArcLengthOfMeridian() [2/2]

double adore::mad::CoordinateConversion::ArcLengthOfMeridian ( double  phi)
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ DegToRad() [1/2]

static double adore::mad::CoordinateConversion::DegToRad ( double  deg)
static

converts degree to radian

Parameters
degis degree (input)
Returns
the radian

◆ DegToRad() [2/2]

double adore::mad::CoordinateConversion::DegToRad ( double  deg)
inlinestatic

converts degree to radian

Parameters
degis degree (input)
Returns
the radian
Here is the caller graph for this function:

◆ FootpointLatitude() [1/2]

static double adore::mad::CoordinateConversion::FootpointLatitude ( double  y)
staticprivate

◆ FootpointLatitude() [2/2]

double adore::mad::CoordinateConversion::FootpointLatitude ( double  y)
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ LatLonToUTMXY() [1/2]

static int adore::mad::CoordinateConversion::LatLonToUTMXY ( double  lat,
double  lon,
int  zone,
double &  x,
double &  y 
)
static

converts Lat-Lon coordinate to UTM

Parameters
latis the lattitude (input)
lonis the longitude (input)
xis the UTM x (output)
yis the UTM y (output)

◆ LatLonToUTMXY() [2/2]

int adore::mad::CoordinateConversion::LatLonToUTMXY ( double  lat,
double  lon,
int  zone,
double &  x,
double &  y 
)
inlinestatic

converts Lat-Lon coordinate to UTM

Parameters
latis the lattitude (input)
lonis the longitude (input)
xis the UTM x (output)
yis the UTM y (output)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MapLatLonToXY() [1/2]

static void adore::mad::CoordinateConversion::MapLatLonToXY ( double  phi,
double  lambda,
double  lambda0,
double &  x,
double &  y 
)
staticprivate

◆ MapLatLonToXY() [2/2]

void adore::mad::CoordinateConversion::MapLatLonToXY ( double  phi,
double  lambda,
double  lambda0,
double &  x,
double &  y 
)
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ MapXYToLatLon() [1/2]

static void adore::mad::CoordinateConversion::MapXYToLatLon ( double  x,
double  y,
double  lambda0,
double &  phi,
double &  lambda 
)
staticprivate

◆ MapXYToLatLon() [2/2]

void adore::mad::CoordinateConversion::MapXYToLatLon ( double  x,
double  y,
double  lambda0,
double &  phi,
double &  lambda 
)
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ RadToDeg() [1/2]

static double adore::mad::CoordinateConversion::RadToDeg ( double  rad)
static

converts radian to degree

Parameters
radis radian (input)
Returns
the degree

◆ RadToDeg() [2/2]

double adore::mad::CoordinateConversion::RadToDeg ( double  rad)
inlinestatic

converts radian to degree

Parameters
radis radian (input)
Returns
the degree
Here is the caller graph for this function:

◆ twoPIrange() [1/2]

static double adore::mad::CoordinateConversion::twoPIrange ( double  rad)
static

normalize the radian [-2*pi , 2*pi]

Parameters
radis radian (input)
Returns
is the normialized radian

◆ twoPIrange() [2/2]

double adore::mad::CoordinateConversion::twoPIrange ( double  rad)
inlinestatic

normalize the radian [-2*pi , 2*pi]

Parameters
radis radian (input)
Returns
is the normialized radian
Here is the caller graph for this function:

◆ UTMCentralMeridian() [1/2]

static double adore::mad::CoordinateConversion::UTMCentralMeridian ( int  zone)
staticprivate

◆ UTMCentralMeridian() [2/2]

double adore::mad::CoordinateConversion::UTMCentralMeridian ( int  zone)
inlinestaticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ UTMXYToLatLon() [1/2]

static void adore::mad::CoordinateConversion::UTMXYToLatLon ( double  x,
double  y,
int  zone,
bool  southhemi,
double &  lat,
double &  lon 
)
static

converts UTM coordinate to Lat-Lon

Parameters
xis the UTM x (input)
yis the UTM y (input)
zoneis the UTM zone (input)
zoneis the UTM zone (southhemi), If the position is in the northern hemisphere then should be set to false, else true
latis the lattitude (output)
lonis the longitude (output)

◆ UTMXYToLatLon() [2/2]

void adore::mad::CoordinateConversion::UTMXYToLatLon ( double  x,
double  y,
int  zone,
bool  southhemi,
double &  lat,
double &  lon 
)
inlinestatic

converts UTM coordinate to Lat-Lon

Parameters
xis the UTM x (input)
yis the UTM y (input)
zoneis the UTM zone (input)
zoneis the UTM zone (southhemi), If the position is in the northern hemisphere then should be set to false, else true
latis the lattitude (output)
lonis the longitude (output)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ UTMXYToLatLonDegree() [1/2]

static void adore::mad::CoordinateConversion::UTMXYToLatLonDegree ( double  x,
double  y,
int  zone,
bool  southhemi,
double &  lat,
double &  lon 
)
static

converts UTM coordinate to Lat-Lon (degree)

Parameters
xis the UTM x (input)
yis the UTM y (input)
zoneis the UTM zone (input)
zoneis the UTM zone (southhemi), If the position is in the northern hemisphere then should be set to false, else true
latis the lattitude (output)
lonis the longitude (output)

◆ UTMXYToLatLonDegree() [2/2]

void adore::mad::CoordinateConversion::UTMXYToLatLonDegree ( double  x,
double  y,
int  zone,
bool  southhemi,
double &  lat,
double &  lon 
)
inlinestatic

converts UTM coordinate to Lat-Lon (degree)

Parameters
xis the UTM x (input)
yis the UTM y (input)
zoneis the UTM zone (input)
zoneis the UTM zone (southhemi), If the position is in the northern hemisphere then should be set to false, else true
latis the lattitude (output)
lonis the longitude (output)
Here is the call graph for this function:
Here is the caller graph for this function:

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