Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

GeoPos.cpp File Reference

More...

#include <SimData/Math.h>
#include <SimData/GeoPos.h>
#include <SimData/Archive.h>
#include <cmath>
#include <sstream>
#include <iomanip>

Namespaces

namespace  GeoRef

Functions

void _iterateECEF (double &_lat, double &_alt, double p, double z_, double x_, double y_, double z, ReferenceEllipsoid const &_ref, int iter=0)
LLA ECEFtoLLA (ECEF const &ecef, ReferenceEllipsoid const &_ref)
 Convert from Earth centered, Earth fixed (ECEF) coondinates to latitude, longitude, and altitude (LLA).

ECEF LLAtoECEF (LLA const &lla, ReferenceEllipsoid const &_ref)
 Convert from latitude, longitude, and altitude (LLA) to Earth centered, Earth fixed (ECEF) coondinates.

ECEF UTMtoECEF (UTM const &utm, ReferenceEllipsoid const &_ref)
 Convert from Universal Transverse Mercator (UTM) coordinates to Earth centered, Earth fixed (ECEF) coondinates.

UTM ECEFtoUTM (ECEF const &ecef, ReferenceEllipsoid const &_ref)
 Convert from Earth centered, Earth fixed (ECEF) coondinates to Universal Transverse Mercator (UTM) coordinates.

LLA UTMtoLLA (UTM const &utm, ReferenceEllipsoid const &_ref)
 Convert from Universal Transverse Mercator (UTM) coordinates to latitude, longitude, and altitude (LLA).

UTM LLAtoUTM (LLA const &lla, ReferenceEllipsoid const &_ref, char _zone)
 Convert from latitude, longitude, and altitude (LLA) to Universal Transverse Mercator (UTM) coordinates.

void SurfaceDistance (LLA const &p, LLA const &q, double &distance, double &bearing, ReferenceEllipsoid const &_ref)
 Get the distance between two points along the surface of the reference ellipsoid.

void ShellDistance (LLA const &p, LLA const &q, double &distance, double &bearing, ReferenceEllipsoid const &_ref)
 Get the distance between two points along the surface of the reference ellipsoid, including altitude.


Detailed Description


Function Documentation

void _iterateECEF double &    _lat,
double &    _alt,
double    p,
double    z_,
double    x_,
double    y_,
double    z,
ReferenceEllipsoid const &    _ref,
int    iter = 0
 

LLA ECEFtoLLA ECEF const &    ecef,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Convert from Earth centered, Earth fixed (ECEF) coondinates to latitude, longitude, and altitude (LLA).

Parameters:
ecef  the source coordinates in ECEF
_ref  the reference ellipsoid (the default is WGS-84)
Returns:
the coordinates in LLA

UTM ECEFtoUTM ECEF const &    ecef,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Convert from Earth centered, Earth fixed (ECEF) coondinates to Universal Transverse Mercator (UTM) coordinates.

Parameters:
ecef  the source coordinates in ECEF
_ref  the reference ellipsoid (the default is WGS-84)
Returns:
the coordinates in UTM

ECEF LLAtoECEF LLA const &    lla,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Convert from latitude, longitude, and altitude (LLA) to Earth centered, Earth fixed (ECEF) coondinates.

Parameters:
lla  the source coordinates in LLA
_ref  the reference ellipsoid (the default is WGS-84)
Returns:
the coordinates in ECEF

UTM LLAtoUTM LLA const &    lla,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84,
char    _zone = -1
 

Convert from latitude, longitude, and altitude (LLA) to Universal Transverse Mercator (UTM) coordinates.

Parameters:
lla  the source coordinates in LLA
_ref  the reference ellipsoid (the default is WGS-84)
_zone  for a specific zone, independent of longitude
Returns:
the coordinates in UTM

void ShellDistance LLA const &    p,
LLA const &    q,
double &    distance,
double &    bearing,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Get the distance between two points along the surface of the reference ellipsoid, including altitude.

This method is very similar to SurfaceDistance, but includes the altitude difference between the two points in an approximate way that can be used both at close range and globally.

Parameters:
p  point 1
q  point 2
distance  Output: a combined geodesic and altitude distance
bearing  Output: the bearing to the specified point (in radians relative to true north)
_ref  the reference ellipsoid (the default is WGS-84)

void SurfaceDistance LLA const &    p,
LLA const &    q,
double &    distance,
double &    bearing,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Get the distance between two points along the surface of the reference ellipsoid.

Both points are projected to altitude = 0, and the distance calculated along a geodesic path of the reference ellipsoid.

Parameters:
p  point 1
q  point 2
distance  Output: the geodesic distance
bearing  Output: the bearing to the specified point (in radians relative to true north)
_ref  the reference ellipsoid (the default is WGS-84)

ECEF UTMtoECEF UTM const &    utm,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Convert from Universal Transverse Mercator (UTM) coordinates to Earth centered, Earth fixed (ECEF) coondinates.

Parameters:
utm  the source coordinates in UTM
_ref  the reference ellipsoid (the default is WGS-84)
Returns:
the coordinates in ECEF

LLA UTMtoLLA UTM const &    utm,
ReferenceEllipsoid const &    _ref = GeoRef::WGS84
 

Convert from Universal Transverse Mercator (UTM) coordinates to latitude, longitude, and altitude (LLA).

Parameters:
utm  the source coordinates in UTM
_ref  the reference ellipsoid (the default is WGS-84)
Returns:
the coordinates in LLA


SimData version pre-0.4.0. For more information on SimData, visit the SimData Homepage.

Generated on Tue Oct 14 12:06:39 2003, using Doxygen 1.2.18.

[SF.net]