VR-Forces 4.1.1 Class Documentation
List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions
makVrv::DtMgrsCoordinateDisplay Class Reference

The military grid reference system coordinate system conversion for the GUI. More...

Inheritance diagram for makVrv::DtMgrsCoordinateDisplay:
Inheritance graph
[legend]

Public Member Functions

 DtMgrsCoordinateDisplay (const DtCoordinateSystem &cs)
virtual ~DtMgrsCoordinateDisplay ()
DtCoordinateDisplayclone () const
 Virtual clone function.
virtual DtUnicode name ()
virtual
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
xUnitsFor (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits units)
virtual
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
yUnitsFor (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits units)
virtual
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
zUnitsFor (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits units)
virtual DtUnicode xAxisLabel ()
virtual DtUnicode yAxisLabel ()
virtual DtUnicode zAxisLabel ()
virtual DtUnicode gridBoxLabel (const DtVector &lowerLeftGeocPos, const DtVector &upperRightGeocPos)
 Some systems (such as MGRS) are not just positions but boxes with grid designators.
virtual DtUnicode northSouthGridLabel (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unit, const DtVector &geocPos, int decimals, double gridSpacing)
 Get the label for a north/south grid line at geocPos.
virtual DtUnicode eastWestGridLabel (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unit, const DtVector &geocPos, int decimals, double gridSpacing)
 Get the label for an east/west grid line at geocPos.
virtual bool clipXToGrid (double inStartX, double inEndX, double constantY, double &clippedStartX, double &clippedEndX)
 Clip a line segment in LOCAL coordinates to an existing grid defined by this coord system, if any.
virtual bool clipYToGrid (double inStartY, double inEndY, double constantX, double &clippedStartY, double &clippedEndY)
 Returns false if entire segment is outside grid.
virtual double maxGridSpacing () const
 Maximum grid spacing allowed. 0. returned if unlimited.
virtual double minGridSpacing () const
 Minimum grid spacing allowed. 0. returned if unlimited.
virtual std::vector< std::string > convertPositionToStringList (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unit, const DtVector &geocPos, int decimals)
 Convert the geocentric position to formatted strings.
virtual void convertToGeocentric (const std::string &x, const std::string &y, const std::string &z, makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits distUnits, makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits altUnits, DtVector &vector)
 Converts the given coordinates (in string rep) from the base units to geocentric.
virtual void regularExpressionValidator (std::string &x, std::string &y, std::string &z)
 Returns a the regexes for validating the XYZ values for this coord sys.
- Public Member Functions inherited from makVrv::DtUtmCoordinateDisplay
 DtUtmCoordinateDisplay (const DtCoordinateSystem &cs)
virtual ~DtUtmCoordinateDisplay ()
virtual void shiftGridLineAnchors (double xSpacing, double ySpacing, double &shiftX, double &shifY)
 Normally, grid lines are started at database 0,0.
virtual bool usesDecimalsOnGridLines () const
 Enable/disable the decimals spinbox on grid settings dialog.
virtual DtVector convertFromGeocentric (const DtVector &geoc) const
 Converts the given coordinates from geocentric to local.
virtual DtTaitBryan localOrientationFor (const DtVector &location, const DtTaitBryan &geocOri) const
 Return local orientation given geocentric orientation.
virtual DtTaitBryan headingPitchRollFor (const DtVector &location, const DtTaitBryan &geocOri) const
 Return orientation in radians.
virtual DtDcm geocToUtmMatrix (const DtVector &geocLoc) const
 Rotation matrices based on geocentric location.
virtual DtDcm utmToGeocMatrix (const DtVector &geocLoc) const
virtual bool isNonUtmDatabase () const
 Returns true if inverse flattening is not UTM (.9996)
virtual bool isGlobalUtmInitialized () const
virtual double scaleFactor () const
- Public Member Functions inherited from makVrv::DtGeocentricCoordinateDisplay
 DtGeocentricCoordinateDisplay (const DtCoordinateSystem &cs)
virtual ~DtGeocentricCoordinateDisplay ()
virtual DtVector geocToLocalVector (const DtVector &geocLoc, const DtVector &geocVec) const
- Public Member Functions inherited from makVrv::DtCoordinateDisplay
 DtCoordinateDisplay (const DtCoordinateSystem &coordSys)
 CTOR DtUnitConverterCollection is a collection of classes used to convert between different units (meters, feet, miles, etc.) DtCoordinateSystem is used to do coordinate system conversions, when possible.
virtual ~DtCoordinateDisplay ()
 DTOR.
virtual DtUnicode northSouthGridLabel (OrientationUnits unit, const DtVector &geocPos, int decimals, double gridSpacing)
 Get a north / south label with angular units.
virtual DtUnicode eastWestGridLabel (OrientationUnits unit, const DtVector &geocPos, int decimals, double gridSpacing)
 Get an east / west label with angular units.
virtual DtTaitBryan topoOrientationFor (const DtVector &geocPos, const DtTaitBryan &geocOri) const
const
SupportedPositionDistanceUnits
supportedPositionDistanceUnits () const
 Retrieve the the list of DistanceUnits supported by this cs display for displaying positions (coordnates).Different coordinate displays can support different distance units for position display (or, in some cases, none).
bool isSupportedPositionUnit (DistanceUnits unit) const
 Determine if the specified distance unit is supported.
void addSupportedPositionUnit (DistanceUnits unitToSupport)
 Add support for a new distance unit type.
void removeSupportedPositionUnit (DistanceUnits unitToRemove)
 Remove support for a distance unit type.
const
SupportedPositionAngularUnits
supportedPositionAngularUnits () const
 Retrieve the the list of OrientationUnits supported by this cs display.
bool isSupportedPositionUnit (OrientationUnits unit) const
 Determine if the specified distance unit is supported.
void addSupportedPositionUnit (OrientationUnits unitToSupport)
 Add support for a new distance unit type.
void removeSupportedPositionUnit (OrientationUnits unitToRemove)
 Remove support for a distance unit type.
const SupportedCSForGridLinessupportedCSForGridLines () const
 Retrieve the the list of coordinate systems that can have grid lines drawn using this display type.
bool isSupportedCSForGridLines (const std::string &cs) const
 Determine if this display supports grid lines for the specified coordinate system.
void addSupportedCSForGridLines (const std::string &cs)
 Add grid line support for a coordinate system.
void removeSupportedCSForGridLines (const std::string &cs)
 Remove grid line support for a coordinate system.

Protected Member Functions

virtual void initializeMilGridEllipsoid ()
 Initialize the mil grid conversion code to the current geodetic datum.
- Protected Member Functions inherited from makVrv::DtUtmCoordinateDisplay
void geocToUtm (const DtVector &geocPos, DtVector &utmPos, DtUnicode &zone, int zoneToUse=0)
DtUnicode formatGridLabel (double value)

Static Protected Member Functions

static bool spheroidsEqual (const DtSpheroid &sph1, const DtSpheroid &sph2)
 operator== for a DtSpheroid

Additional Inherited Members

- Public Types inherited from makVrv::DtCoordinateDisplay
typedef
makArchives::DtDisplayUnitsSettingsRecord::CoordSys 
CoordSys
typedef
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
DistanceUnits
typedef
makArchives::DtDisplayUnitsSettingsRecord::VelocityUnits 
VelocityUnits
typedef
makArchives::DtDisplayUnitsSettingsRecord::AccelerationUnits 
AccelerationUnits
typedef
makArchives::DtDisplayUnitsSettingsRecord::OrientationUnits 
OrientationUnits
typedef
makArchives::DtDisplayUnitsSettingsRecord::RotVelocityUnits 
RotVelocityUnits
typedef std::list< DistanceUnitsSupportedPositionDistanceUnits
typedef std::list
< OrientationUnits
SupportedPositionAngularUnits
typedef std::list< std::string > SupportedCSForGridLines
- Protected Attributes inherited from makVrv::DtCoordinateDisplay
const DtCoordinateSystemmyCoordinateSystem
SupportedPositionDistanceUnits mySupportedPositionDistanceUnits
SupportedPositionAngularUnits mySupportedPositionAngularUnits
SupportedCSForGridLines mySupportedCSForGridLines

Detailed Description

The military grid reference system coordinate system conversion for the GUI.

Constructor & Destructor Documentation

makVrv::DtMgrsCoordinateDisplay::DtMgrsCoordinateDisplay ( const DtCoordinateSystem cs)
virtual makVrv::DtMgrsCoordinateDisplay::~DtMgrsCoordinateDisplay ( )
virtual

Member Function Documentation

DtCoordinateDisplay* makVrv::DtMgrsCoordinateDisplay::clone ( ) const
virtual

Virtual clone function.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::name ( )
virtual

Reimplemented from makVrv::DtUtmCoordinateDisplay.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::xAxisLabel ( )
virtual

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::yAxisLabel ( )
virtual

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::zAxisLabel ( )
virtual

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::gridBoxLabel ( const DtVector lowerLeftGeocPos,
const DtVector upperRightGeocPos 
)
virtual

Some systems (such as MGRS) are not just positions but boxes with grid designators.

This function should return "" if a system has no grid boxes, otherwise return a label suitable for the lower left-hand corner of that box

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::northSouthGridLabel ( makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits  unit,
const DtVector geocPos,
int  decimals,
double  gridSpacing 
)
virtual

Get the label for a north/south grid line at geocPos.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual DtUnicode makVrv::DtMgrsCoordinateDisplay::eastWestGridLabel ( makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits  unit,
const DtVector geocPos,
int  decimals,
double  gridSpacing 
)
virtual

Get the label for an east/west grid line at geocPos.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual bool makVrv::DtMgrsCoordinateDisplay::clipXToGrid ( double  inStartX,
double  inEndX,
double  constantY,
double &  clippedStartX,
double &  clippedEndX 
)
virtual

Clip a line segment in LOCAL coordinates to an existing grid defined by this coord system, if any.

Returns false if entire segment is outside grid

Reimplemented from makVrv::DtCoordinateDisplay.

virtual bool makVrv::DtMgrsCoordinateDisplay::clipYToGrid ( double  inStartY,
double  inEndY,
double  constantX,
double &  clippedStartY,
double &  clippedEndY 
)
virtual

Returns false if entire segment is outside grid.

Reimplemented from makVrv::DtCoordinateDisplay.

virtual double makVrv::DtMgrsCoordinateDisplay::maxGridSpacing ( ) const
virtual

Maximum grid spacing allowed. 0. returned if unlimited.

Reimplemented from makVrv::DtCoordinateDisplay.

virtual double makVrv::DtMgrsCoordinateDisplay::minGridSpacing ( ) const
virtual

Minimum grid spacing allowed. 0. returned if unlimited.

Reimplemented from makVrv::DtCoordinateDisplay.

virtual std::vector<std::string> makVrv::DtMgrsCoordinateDisplay::convertPositionToStringList ( makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits  unit,
const DtVector geocPos,
int  decimals 
)
virtual

Convert the geocentric position to formatted strings.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual void makVrv::DtMgrsCoordinateDisplay::convertToGeocentric ( const std::string &  x,
const std::string &  y,
const std::string &  z,
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits  distUnits,
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits  altUnits,
DtVector vector 
)
virtual

Converts the given coordinates (in string rep) from the base units to geocentric.

Note that the coordinates must be in the units of this collection

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual void makVrv::DtMgrsCoordinateDisplay::regularExpressionValidator ( std::string &  x,
std::string &  y,
std::string &  z 
)
virtual

Returns a the regexes for validating the XYZ values for this coord sys.

Need X, Y and Z because they may be different for a given coordinate system.

Reimplemented from makVrv::DtUtmCoordinateDisplay.

virtual void makVrv::DtMgrsCoordinateDisplay::initializeMilGridEllipsoid ( )
protectedvirtual

Initialize the mil grid conversion code to the current geodetic datum.

static bool makVrv::DtMgrsCoordinateDisplay::spheroidsEqual ( const DtSpheroid &  sph1,
const DtSpheroid &  sph2 
)
staticprotected

operator== for a DtSpheroid


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

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)