![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2011 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #include <vrvUtil/DtDatabaseCoordinateDisplay.h> 00010 00013 class SngCoordinateDisplay : public makVrv::DtCoordinateDisplay 00014 { 00015 public: 00016 00017 // Extend the CoordSys enumeration 00018 static const CoordSys CoordSysSNG = 00019 makArchives::DtDisplayUnitsSettingsRecord::CoordSysUserStart; 00020 00022 SngCoordinateDisplay(const makVrv::DtCoordinateSystem& cs ); 00023 00025 DistanceUnits xUnitsFor(DistanceUnits unit ); 00026 00028 DistanceUnits yUnitsFor(DistanceUnits unit ); 00029 00031 DistanceUnits zUnitsFor( DistanceUnits unit ); 00032 00034 virtual makVrv::DtUnicode xAxisLabel(); 00035 00037 virtual makVrv::DtUnicode yAxisLabel(); 00038 00040 virtual makVrv::DtUnicode zAxisLabel(); 00041 00043 virtual makVrv::DtUnicode northSouthGridLabel( DistanceUnits unit, 00044 const DtVector& geocPos, int decimals, double gridSpacing ); 00045 00047 virtual makVrv::DtUnicode eastWestGridLabel( DistanceUnits unit, 00048 const DtVector& geocPos, int decimals, double gridSpacing ); 00049 00053 virtual std::vector<std::string> convertPositionToStringList( 00054 DistanceUnits unit, const DtVector& geocPos, int decimals); 00055 00059 virtual void convertToGeocentric( const std::string& x, 00060 const std::string& y, const std::string& z, DistanceUnits distUnits, 00061 DistanceUnits altUnits, DtVector& vector); 00062 00065 virtual makVrv::DtUnicode name(); 00066 00068 virtual makVrv::DtCoordinateDisplay* clone() const; 00069 00071 DtVector convertFromGeocentric( const DtVector& geoc ) const; 00072 00074 DtTaitBryan headingPitchRollFor( const DtVector& location, 00075 const DtTaitBryan& geocOri ) const; 00076 00078 DtTaitBryan localOrientationFor( const DtVector& location, 00079 const DtTaitBryan& geocOri ) const; 00080 00082 DtTaitBryan orientationFor( const DtVector& location, 00083 const DtTaitBryan& geocOri, bool local ) const; 00084 00086 void regularExpressionValidator( std::string& x, std::string& y, 00087 std::string& z ); 00088 00089 protected: 00090 00092 static void convertWGS84ToSNG(const DtVector& InVector, 00093 DtVector& OutVector); 00094 00096 static void convertSNGToWGS84(const DtVector& InVecPos, 00097 DtVector& OutVecPos ); 00098 }; 00099