MOOS

CMOOSGeodesy Class Reference

Implements simple geodesy calculations. More...

#include <MOOSGeodesy.h>

List of all members.

Public Member Functions

double GetOriginNorthing ()
double GetOriginEasting ()
bool LatLong2LocalUTM (double lat, double lon, double &MetersNorth, double &MetersEast)
char * GetUTMZone ()
int GetRefEllipsoid ()
double GetMetersEast ()
double GetMetersNorth ()
double GetOriginLatitude ()
double GetOriginLongitude ()
bool Initialise (double lat, double lon)
double GetLocalGridY ()
double GetLocalGridX ()
bool LatLong2LocalGrid (double lat, double lon, double &MetersNorth, double &MetersEast)
double DMS2DecDeg (double dfVal)

Classes

class  CEllipsoid


Detailed Description

Implements simple geodesy calculations.


Member Function Documentation

bool CMOOSGeodesy::Initialise double  lat,
double  lon
 

This method is called to set the Origins of the Coordinate system being used by the vehicle for a mission. This class will store the vehicle's position in Northings and Eastings. This allows for tracking the vehicle as if it were operating on a grid.

Parameters:
lat the Latitude of where the vehicle is as it begins a mission
lon the Longitude of where the vehicle is as it begins a mission
Returns:
only returns true at the moment, no reason as to why it should fail perhaps some way of checking UTM zones vs a list of some sort?

bool CMOOSGeodesy::LatLong2LocalUTM double  lat,
double  lon,
double &  MetersNorth,
double &  MetersEast
 

This method is the interface to this class and allows the client to query the amount of ground covered with respect to the origin where the origin is defined as a point in the UTM grid where we got an initial GPS fix that we defined to be the origin. What this method does not take into account is the curvature of the reference ellipsoid at a particular Lat/Lon value. Curvature influences the deltaX and deltaY that this method calculates for determining the overall distance traveled wrt the origin. Therefore, at Lat/Lon values that are significantly far enough (~300km) away from the origin of the UTM grid (0,0), a shift in one dimension, i.e. just along Latitude, or just along Longitude, does not map to a corresponding one dimensional shift in our "local" grid where we should be seeing just a deltaX or deltaY result in moving in only one direction. Instead, we have observed that moving just .0001 degrees in Longitude (~1m in local) results in both a deltaX that is coupled to a deltaY.

Parameters:
lat The current Latitude the vehicle is at
lon The current Longitude the vehicle is at
MetersNorth The distance in meters traveled North wrt to Origin
MetersEast The distance in meters traveled East wrt to Origin


The documentation for this class was generated from the following files:
Generated on Tue Mar 13 10:23:13 2007 for MOOSGenLib by  doxygen 1.4.6