![]() |
VR-Forces 4.3.1 Class Documentation
|
DtCoordinateConverter is the base class for 'local (cig) to geocentric' converters. More...

Public Types | |
| typedef DtCoordinateConverter *(* | CreatorFn )() |
| Converts between generic Cartesian and geocentri. | |
Public Member Functions | |
| virtual | ~DtCoordinateConverter () |
| destructor | |
| virtual const std::string & | type () const |
| Get converter type - this base class type is NoOp. | |
| virtual DtCoordinateConverter * | clone () const =0 |
| Clone the coordinate converter;. | |
| virtual bool | init (const std::string &originstring)=0 |
| Initialize the converter based on the string. | |
| virtual std::string | stringRep ()=0 |
| Convert to string. | |
| virtual bool | zIsAlt () const |
| get whether 3rd element corresponds to altitude in this coordinate system | |
| virtual bool | usesOffsetFile () const |
| get whether Warbreaker type file needed | |
| virtual DtGeodeticCoord | databaseOrigin () const |
| get database origin (cig) Origin is (latitude, longitude, alt) in degrees and meters (alt = 0 always) | |
| virtual void | setGeocOriginOffset (const DtVector &offset) |
| set origin offset (geoc cig origin) | |
| virtual void | reset () |
| Reset the coordinate converter This function recalculates constants used for conversions. | |
| virtual const DtDcm & | nedToCigDcm () const |
| get ned to cig rotation matrix | |
| virtual const DtDcm & | cigToNedDcm () const |
| get cig to ned rotation matrix | |
| virtual const DtDcm & | geocToCigDcm () const |
| set/get geoc to cig rotation matrix | |
| virtual const DtDcm & | cigToGeocDcm () const |
| get cig to geoc rotation matrix NOTE: returns a static reference, non-reentrant | |
| virtual const DtDcm & | geocToNedDcm () const |
| set/get geoc to ned rotation matrix | |
| virtual const DtDcm & | cigToEnuDcm () const |
| get geoc to ned estimate rotation matrix virtual const DtDcm& geocToNedEstDcm() const; | |
| virtual const DtDcm & | nedToGeocDcm () const |
| get ned to geoc rotation matrix | |
| virtual void | geocToCig (const DtVector &geoc, DtVector &out) const =0 |
| geoc coordinates to cig coordinates | |
| virtual void | cigToGeoc (const DtVector &in, DtVector &geoc) const =0 |
| cig coordinates to geoc coordinates | |
| virtual void | setupTopoFrame (const DtVector &truth) |
| Update all our transformation matrices based on the current database position. | |
| virtual void | cigToEnu_coordTrans (const DtVector &cigPos, DtVector &enuPos) const |
| convert to Enu coordinates from Cig coordinates | |
| virtual void | cigToEnu_vecTrans (const DtVector &cigVec, DtVector &enuVec) const |
| convert to Enu vector from Cig vector | |
| virtual void | enuToCig_coordTrans (const DtVector &enuPos, DtVector &cigPos) const |
| convert to Cig coordinates from Enu coordinates | |
| virtual void | enuToCig_vecTrans (const DtVector &enuVec, DtVector &cigVec) const |
| convert to Cig vector from Enu vector NOTE: returns a static reference, non-reentrant | |
| virtual DtVector & | enuToCig_vecTrans (const DtVector &origin, const DtVector &offset) const |
| provide cig coordinates given enu offset from a cig coord | |
| virtual const DtTaitBryan & | nedToCig_EulerTrans (const DtTaitBryan &topo) const |
| provide cig euler angles from topo euler NOTE: returns a static reference, non-reentrant | |
| virtual DtVector | up (const DtVector &orig) const |
| provide 'up' vector | |
| virtual void | topoSurface (const DtVector &o, DtVector &surface) const |
| fill surface with topographic coords, alt 0 | |
| const DtDcm | nedToEnuDcm () const |
Static Public Member Functions | |
| static double | convertToDouble (const std::string &str) |
| static double | convertToDouble (const DtDegMinSec &dms) |
| static DtDegMinSec | convertToDmsLat (double deg) |
| static DtDegMinSec | convertToDmsLon (double deg) |
| static bool | isCoordinateSystemProjected (const std::string &csType) |
| Is the specified coordinate system type a projected type? | |
Static Public Attributes | |
| static const char * | NoOp |
| static const char * | Geocentric |
| Does no conversion. | |
| static const char * | UTM |
| Converts between geocentric database coords and. | |
| static const char * | Lambert |
| Converts between UTM and geocentric. | |
| static const char * | FlatEarth |
| Converts between Lambert and geocentric. | |
| static const char * | Cartesian |
| Converts between Flat Earth and geocentric. | |
Protected Member Functions | |
| DtCoordinateConverter (const std::string &t) | |
| constructor | |
| std::string | polarDirectionToStr (int dir) |
| Helper for converting polar direction to string representations. | |
| std::string | parseLatLng (const DtDegMinSec &lat, const DtDegMinSec &lng) |
| Return string from lat long. | |
Protected Attributes | |
| std::string | myType |
| flags | |
| bool | myUsesWarbreaker |
| bool | myZAlt |
| DtGeodeticCoord | myGeodOrigin |
| initializing system | |
| DtDcm | myNedToGeocDcm |
| topo frame DCM's | |
| DtDcm | myGeocToNedDcm |
| DtDcm | myNedToCigDcm |
| DtDcm | myCigToNedDcm |
| DtDcm | myGeocToCigDcm |
| DtDcm | myCigToGeocDcm |
| DtDcm | myCigToEnuDcm |
| const DtDcm | myNedToEnuDcm |
| DtDcm | myNed2CigEulerDcm |
| to-euler DCM's | |
| DtVector | myLastLocation |
| DtCoordTransform myGeocToNedTransform;. | |
Private Member Functions | |
| DtCoordinateConverter (const DtCoordinateConverter &orig) | |
| copy constructor | |
| DtCoordinateConverter & | operator= (const DtCoordinateConverter &orig) |
| assignment operator | |
DtCoordinateConverter is the base class for 'local (cig) to geocentric' converters.
| typedef DtCoordinateConverter*(* makVrv::DtCoordinateConverter::CreatorFn)() |
Converts between generic Cartesian and geocentri.
|
virtual |
destructor
|
protected |
constructor
|
private |
copy constructor
|
virtual |
Get converter type - this base class type is NoOp.
|
pure virtual |
Clone the coordinate converter;.
Implemented in makVrv::DtCartesianCoordinateConverter, makVrv::DtLambertCoordinateConverter, makVrv::DtFlatEarthCoordinateConverter, makVrv::DtNoOpCoordinateConverter, makVrv::DtUtmCoordinateConverter, and makVrv::DtGeocentricCoordinateConverter.
|
pure virtual |
Initialize the converter based on the string.
Implemented in makVrv::DtUtmCoordinateConverter, makVrv::DtCartesianCoordinateConverter, makVrv::DtLambertCoordinateConverter, makVrv::DtFlatEarthCoordinateConverter, makVrv::DtGeocentricCoordinateConverter, and makVrv::DtNoOpCoordinateConverter.
|
pure virtual |
|
virtual |
get whether 3rd element corresponds to altitude in this coordinate system
|
virtual |
get whether Warbreaker type file needed
|
virtual |
get database origin (cig) Origin is (latitude, longitude, alt) in degrees and meters (alt = 0 always)
|
inlinevirtual |
set origin offset (geoc cig origin)
|
virtual |
Reset the coordinate converter This function recalculates constants used for conversions.
Reimplemented in makVrv::DtLambertCoordinateConverter.
|
virtual |
get ned to cig rotation matrix
|
virtual |
get cig to ned rotation matrix
|
virtual |
set/get geoc to cig rotation matrix
|
virtual |
get cig to geoc rotation matrix NOTE: returns a static reference, non-reentrant
|
virtual |
set/get geoc to ned rotation matrix
Reimplemented in makVrv::DtGeocentricCoordinateConverter.
|
virtual |
get geoc to ned estimate rotation matrix virtual const DtDcm& geocToNedEstDcm() const;
get cig to enu rotation matrix
|
virtual |
get ned to geoc rotation matrix
Reimplemented in makVrv::DtGeocentricCoordinateConverter.
|
pure virtual |
geoc coordinates to cig coordinates
Implemented in makVrv::DtUtmCoordinateConverter, makVrv::DtLambertCoordinateConverter, makVrv::DtCartesianCoordinateConverter, makVrv::DtFlatEarthCoordinateConverter, makVrv::DtGeocentricCoordinateConverter, and makVrv::DtNoOpCoordinateConverter.
|
pure virtual |
cig coordinates to geoc coordinates
Implemented in makVrv::DtUtmCoordinateConverter, makVrv::DtLambertCoordinateConverter, makVrv::DtCartesianCoordinateConverter, makVrv::DtFlatEarthCoordinateConverter, makVrv::DtGeocentricCoordinateConverter, and makVrv::DtNoOpCoordinateConverter.
|
virtual |
Update all our transformation matrices based on the current database position.
Reimplemented in makVrv::DtUtmCoordinateConverter, makVrv::DtCartesianCoordinateConverter, makVrv::DtGeocentricCoordinateConverter, and makVrv::DtNoOpCoordinateConverter.
|
virtual |
convert to Enu coordinates from Cig coordinates
Reimplemented in makVrv::DtCartesianCoordinateConverter, and makVrv::DtGeocentricCoordinateConverter.
|
virtual |
convert to Enu vector from Cig vector
Reimplemented in makVrv::DtCartesianCoordinateConverter, and makVrv::DtGeocentricCoordinateConverter.
|
virtual |
convert to Cig coordinates from Enu coordinates
Reimplemented in makVrv::DtCartesianCoordinateConverter, and makVrv::DtGeocentricCoordinateConverter.
|
virtual |
convert to Cig vector from Enu vector NOTE: returns a static reference, non-reentrant
Reimplemented in makVrv::DtCartesianCoordinateConverter, and makVrv::DtGeocentricCoordinateConverter.
|
virtual |
provide cig coordinates given enu offset from a cig coord
|
virtual |
provide cig euler angles from topo euler NOTE: returns a static reference, non-reentrant
provide 'up' vector
|
virtual |
fill surface with topographic coords, alt 0
|
inline |
|
static |
|
static |
|
static |
|
static |
|
static |
Is the specified coordinate system type a projected type?
|
protected |
Helper for converting polar direction to string representations.
|
protected |
Return string from lat long.
|
private |
assignment operator
|
static |
|
static |
Does no conversion.
|
static |
Converts between geocentric database coords and.
geocentric network coords
|
static |
Converts between UTM and geocentric.
|
static |
Converts between Lambert and geocentric.
|
static |
Converts between Flat Earth and geocentric.
|
protected |
flags
|
protected |
|
protected |
|
protected |
initializing system
|
protected |
topo frame DCM's
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
to-euler DCM's
|
protected |
DtCoordTransform myGeocToNedTransform;.