GCL::ConvGeocLoc Class Reference

Conversion between geocentric and local coordinates class. More...

#include <convgeocloc.h>

Inheritance diagram for GCL::ConvGeocLoc:

GCL::Ellipsoid

List of all members.

Public Member Functions

void print (ostream &os) const
 print transformation parameters
constructor/destructors
 ConvGeocLoc ()
 default constructor
virtual ~ConvGeocLoc ()
 destructor
set/get reference point
Set or get the definition of the reference point B in geodetic coordinates.

void set_reference_point (double bb, double lb, double hb)
 set reference point
void get_reference_point (double &bb, double &lb, double &hb) const
 get reference point
geodetic / local topocentric coordinates conversion
Conversion between geodetic (b, l, h) and local topocentric (u, v, w) coordinates.

void geo_to_loc (double b, double l, double h, double &u, double &v, double &w) const
 conversion from geodetic to local coordinates
void loc_to_geo (double u, double v, double w, double &b, double &l, double &h) const
 conversion from local to geodetic coordinates

Protected Attributes

double _bb
 geographic latitude of reference point B
double _lb
 geographic longitude of reference point B
double _hb
 ellipsoid height of reference point B
double _xb
 X-coordinate of reference point B.
double _yb
 Y-coordinate of reference point B.
double _zb
 Z-coordinate of reference point B.
DRotMatrix3 _rot_matrix
 rotation matrix


Detailed Description

Conversion between geocentric and local coordinates class.

This class provide the transformation of cartesian coordinates between the geocentric and a local topocentric location. The topocentric coordinate system is also referred as local reference system (LRS).

The origin of the local coordinate system is in reference point B. The reference point B is defined in respect to the reference ellipsoid by the geodetic coordinates bb, lb and hb.

Attention, in geodesy and surveying the local coordinate system is defined as a left-handed system!

References:

Author:
Dirk Stallmann

Member Function Documentation

void GCL::ConvGeocLoc::set_reference_point ( double  bb,
double  lb,
double  hb 
)

set reference point

Geodetic coordinates of the reference point:

Parameters:
[in] bb geographic latitude
[in] lb geographic longitude
[in] hb ellipsoid height

References _bb, _hb, _lb, _rot_matrix, _xb, _yb, _zb, and GCL::Ellipsoid::geo_to_cart().

void GCL::ConvGeocLoc::get_reference_point ( double &  bb,
double &  lb,
double &  hb 
) const

get reference point

Geodetic coordinates of the reference point:

Parameters:
[out] bb geographic latitude
[out] lb geographic longitude
[out] hb ellipsoid height

References _bb, _hb, and _lb.

void GCL::ConvGeocLoc::print ( ostream &  os  )  const

print transformation parameters

Parameters:
[out] os output stream

Reimplemented from GCL::Ellipsoid.

References _bb, _hb, _lb, _xb, _yb, _zb, and GCL::Ellipsoid::print().

void GCL::ConvGeocLoc::geo_to_loc ( double  b,
double  l,
double  h,
double &  u,
double &  v,
double &  w 
) const

conversion from geodetic to local coordinates

Parameters:
[in] b,l geographic latitude and longitude
[in] h ellipsoid height
[out] u,v,w local coordinates

References _rot_matrix, _xb, _yb, _zb, and GCL::Ellipsoid::geo_to_cart().

void GCL::ConvGeocLoc::loc_to_geo ( double  u,
double  v,
double  w,
double &  b,
double &  l,
double &  h 
) const

conversion from local to geodetic coordinates

Parameters:
[in] u,v,w local coordinates
[out] b,l geographic latitude and longitude
[out] h ellipsoid height

References _rot_matrix, _xb, _yb, _zb, and GCL::Ellipsoid::cart_to_geo().


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

Generated on Wed Aug 6 15:31:15 2008 by  doxygen 1.5.5