VR-Link API Documentation for HLA Evolved
mapDatum.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 
00006 
00007 #ifndef DtMapDatum_H_
00008 #define DtMapDatum_H_
00009 
00010 #include <vlutil/vlMachineTypes.h>
00011 
00016 
00017 #ifdef DtUSE_UTILITIES_NAMESPACE
00018 namespace DtUSE_UTILITIES_NAMESPACE
00019 {
00020 #endif
00021 
00027 class DT_DLL_MATRIX DtSpheroid
00028 {
00029 public:
00030 
00032    DtFloat64 semiMajor;   
00033 
00035    DtFloat64 semiMinor;   
00036 };
00037 
00050 class DT_DLL_MATRIX DtMapDatum
00051 {
00052 public:
00053 
00055    DtMapDatum();
00056 
00059    DtMapDatum(const DtSpheroid& s, DtFloat64 x, DtFloat64 y, DtFloat64 z );
00060 
00062    DtMapDatum( const DtMapDatum& src );
00063 
00065    ~DtMapDatum();
00066 
00068    DtMapDatum& operator=( const DtMapDatum& src );
00069 
00071    //WARNING: compares floating point values
00072    int operator==( const DtMapDatum& rhs ) const;
00073 
00075    int operator!=( const DtMapDatum& rhs ) const;
00076 
00077    DtSpheroid spheroid;
00078    DtFloat64 datumShift[3]; 
00079 };
00080 
00081 
00083 const DtSpheroid DtWGS84Spheroid = { 6378137.0, 6356752.3142 };
00084 
00085 const DtSpheroid DtInternationalSpheroid = { 6378388.0, 6356911.946127 };
00086 const DtSpheroid DtClark1866Spheroid = { 6378206.4, 6356583.8 };
00087 
00088 const DtMapDatum DtWGS84( DtWGS84Spheroid, 0.0, 0.0, 0.0 );
00089 const DtMapDatum DtED50( DtInternationalSpheroid, -87.0, -98.0, -121.0 );
00090 const DtMapDatum DtNASANAD27(  DtClark1866Spheroid, -8.0, 161.0,  179.0 );
00091 const DtMapDatum DtNASBNAD27(  DtClark1866Spheroid, -8.0, 159.0,  175.0 );
00092 const DtMapDatum DtCONUSNAD27( DtClark1866Spheroid, -8.0, 160.0,  176.0 );
00093 
00095 DT_DLL_MATRIX void DtUseMapDatum( const DtMapDatum& md );
00096 
00098 DT_DLL_MATRIX const DtMapDatum& DtCurrentMapDatum();
00099 
00100 #ifdef DtUSE_UTILITIES_NAMESPACE
00101 }
00102 #endif
00103 
00104 #endif   //! DtMapDatum_H_
00105 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)