VR-Forces 4.1 Class Documentation
List of all members | Public Member Functions | Protected Member Functions
makVrv::DtUtmCoordinateDisplay Class Reference

Coordinate system display for UTM coordinates. More...

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

Public Member Functions

 DtUtmCoordinateDisplay (const DtCoordinateSystem &cs)
virtual ~DtUtmCoordinateDisplay ()
DtCoordinateDisplayclone () const
 Virtual clone function.
virtual DtUnicode name ()
virtual
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
xUnitsFor (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unit)
virtual
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
yUnitsFor (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unit)
virtual
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits 
zUnitsFor (makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits unit)
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 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 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 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
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::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 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 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

void geocToUtm (const DtVector &geocPos, DtVector &utmPos, DtUnicode &zone, int zoneToUse=0)
DtUnicode formatGridLabel (double value)

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

Coordinate system display for UTM coordinates.

Constructor & Destructor Documentation

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

Member Function Documentation

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

Virtual clone function.

Reimplemented from makVrv::DtGeocentricCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

virtual DtUnicode makVrv::DtUtmCoordinateDisplay::name ( )
virtual
virtual DtUnicode makVrv::DtUtmCoordinateDisplay::xAxisLabel ( )
virtual
virtual DtUnicode makVrv::DtUtmCoordinateDisplay::yAxisLabel ( )
virtual
virtual DtUnicode makVrv::DtUtmCoordinateDisplay::zAxisLabel ( )
virtual
virtual DtUnicode makVrv::DtUtmCoordinateDisplay::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::DtCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

virtual DtUnicode makVrv::DtUtmCoordinateDisplay::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::DtGeocentricCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

virtual DtUnicode makVrv::DtUtmCoordinateDisplay::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::DtGeocentricCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

virtual void makVrv::DtUtmCoordinateDisplay::shiftGridLineAnchors ( double  xSpacing,
double  ySpacing,
double &  shiftX,
double &  shifY 
)
virtual

Normally, grid lines are started at database 0,0.

This allows a shift to start them somewhere else (like a UTM zone origin)

Reimplemented from makVrv::DtCoordinateDisplay.

virtual bool makVrv::DtUtmCoordinateDisplay::usesDecimalsOnGridLines ( ) const
virtual

Enable/disable the decimals spinbox on grid settings dialog.

Reimplemented from makVrv::DtCoordinateDisplay.

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

Convert the geocentric position to formatted strings.

Reimplemented from makVrv::DtGeocentricCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

virtual void makVrv::DtUtmCoordinateDisplay::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::DtGeocentricCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

virtual DtVector makVrv::DtUtmCoordinateDisplay::convertFromGeocentric ( const DtVector geoc) const
virtual

Converts the given coordinates from geocentric to local.

Returns
Lat (degrees), Lon (degrees), Altitude (meters).

Reimplemented from makVrv::DtGeocentricCoordinateDisplay.

virtual DtTaitBryan makVrv::DtUtmCoordinateDisplay::localOrientationFor ( const DtVector location,
const DtTaitBryan &  geocOri 
) const
virtual

Return local orientation given geocentric orientation.

Reimplemented from makVrv::DtGeocentricCoordinateDisplay.

virtual DtTaitBryan makVrv::DtUtmCoordinateDisplay::headingPitchRollFor ( const DtVector location,
const DtTaitBryan &  geocOri 
) const
virtual

Return orientation in radians.

Reimplemented from makVrv::DtGeocentricCoordinateDisplay.

virtual DtDcm makVrv::DtUtmCoordinateDisplay::geocToUtmMatrix ( const DtVector geocLoc) const
virtual

Rotation matrices based on geocentric location.

virtual DtDcm makVrv::DtUtmCoordinateDisplay::utmToGeocMatrix ( const DtVector geocLoc) const
virtual
virtual bool makVrv::DtUtmCoordinateDisplay::isNonUtmDatabase ( ) const
virtual

Returns true if inverse flattening is not UTM (.9996)

virtual bool makVrv::DtUtmCoordinateDisplay::isGlobalUtmInitialized ( ) const
virtual
virtual double makVrv::DtUtmCoordinateDisplay::scaleFactor ( ) const
virtual
virtual void makVrv::DtUtmCoordinateDisplay::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::DtGeocentricCoordinateDisplay.

Reimplemented in makVrv::DtMgrsCoordinateDisplay.

void makVrv::DtUtmCoordinateDisplay::geocToUtm ( const DtVector geocPos,
DtVector utmPos,
DtUnicode zone,
int  zoneToUse = 0 
)
protected
DtUnicode makVrv::DtUtmCoordinateDisplay::formatGridLabel ( double  value)
protected

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

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)