VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
sngDisplay.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 #pragma once
6 
9 
11 
15 {
16 public:
17 
18  // Extend the CoordSys enumeration
19  static const CoordSys CoordSysSNG =
21 
24 
27 
30 
33 
35  virtual makVrv::DtUnicode xAxisLabel();
36 
38  virtual makVrv::DtUnicode yAxisLabel();
39 
41  virtual makVrv::DtUnicode zAxisLabel();
42 
45  const DtVector& geocPos, int decimals, double gridSpacing, bool minimal);
46 
49  const DtVector& geocPos, int decimals, double gridSpacing, bool minimal);
50 
54  virtual std::vector<std::string> convertPositionToStringList(
55  DistanceUnits unit, const DtVector& geocPos, int decimals);
56 
62  virtual std::vector<makVrv::DtUnicode> convertPositionToNotatedStringList(
63  DistanceUnits unit, makVrv::DtUnicode unitNotation, const DtVector& geocPos, int decimals);
64 
68  virtual void convertToGeocentric( const std::string& x,
69  const std::string& y, const std::string& z, DistanceUnits distUnits,
70  DistanceUnits altUnits, DtVector& vector);
71 
74  virtual makVrv::DtUnicode name();
75 
77  virtual makVrv::DtCoordinateDisplay* clone() const;
78 
80  DtVector convertFromGeocentric( const DtVector& geoc ) const;
81 
83  DtTaitBryan headingPitchRollFor( const DtVector& location,
84  const DtTaitBryan& geocOri ) const;
85 
87  DtTaitBryan localOrientationFor( const DtVector& location,
88  const DtTaitBryan& geocOri ) const;
89 
91  DtTaitBryan orientationFor( const DtVector& location,
92  const DtTaitBryan& geocOri, bool local ) const;
93 
95  void regularExpressionValidator( std::string& x, std::string& y,
96  std::string& z );
97 
98 protected:
99 
101  static void convertWGS84ToSNG(const DtVector& InVector,
102  DtVector& OutVector);
103 
105  static void convertSNGToWGS84(const DtVector& InVecPos,
106  DtVector& OutVecPos );
107 };
108 
virtual makVrv::DtUnicode eastWestGridLabel(DistanceUnits unit, const DtVector &geocPos, int decimals, double gridSpacing, bool minimal)
Get the (numeric) label for an east/west grid line at geocPos.
A unicode string.
Definition: DtUnicode.h:33
The SngCoordinateDisplay class provides the ability for VR-Vantage to display Swiss grid geographic c...
Definition: sngDisplay.h:14
DtTaitBryan headingPitchRollFor(const DtVector &location, const DtTaitBryan &geocOri) const
Heading pitch and roll function.
Abstract interface class for all coordinate system displays.
Definition: DtCoordinateDisplay.h:24
DtVector convertFromGeocentric(const DtVector &geoc) const
Conversion function for local to geocentric conversion.
void regularExpressionValidator(std::string &x, std::string &y, std::string &z)
Regular expression validators for coordinate input.
virtual void convertToGeocentric(const std::string &x, const std::string &y, const std::string &z, DistanceUnits distUnits, DistanceUnits altUnits, DtVector &vector)
Convert a local position in x,y,z string form to geocentric coordinates, given that the x and y strin...
DistanceUnits yUnitsFor(DistanceUnits unit)
Get the y units for this coordinate display (Meters)
static const CoordSys CoordSysSNG
Definition: sngDisplay.h:19
DistanceUnits xUnitsFor(DistanceUnits unit)
Get the x units for this coordinate display (Meters)
CoordSys
Enumeration of the different coordinate system types.
Definition: DtDisplayUnitsSettingsRecord.h:30
DistanceUnits
Enumeration of the different distance units.
Definition: DtDisplayUnitsSettingsRecord.h:56
virtual makVrv::DtUnicode northSouthGridLabel(DistanceUnits unit, const DtVector &geocPos, int decimals, double gridSpacing, bool minimal)
Get the (numeric) label for a north/south grid line at geocPos.
virtual makVrv::DtUnicode name()
The name of this coordinate display (which will appear in combo boxes in the GUI. ...
Definition: DtDisplayUnitsSettingsRecord.h:39
virtual std::vector< makVrv::DtUnicode > convertPositionToNotatedStringList(DistanceUnits unit, makVrv::DtUnicode unitNotation, const DtVector &geocPos, int decimals)
Convert the geocentric position to a vector of notated strings.
static void convertSNGToWGS84(const DtVector &InVecPos, DtVector &OutVecPos)
Convert from Swiss National Grid (SNG) to WGS 84 Geocentric.
SngCoordinateDisplay(const makVrv::DtCoordinateSystem &cs)
CTOR.
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:41
virtual makVrv::DtUnicode xAxisLabel()
Return the label that will be used for x values in the GUI (&quot;E &quot;)
DtTaitBryan localOrientationFor(const DtVector &location, const DtTaitBryan &geocOri) const
Orientation function.
virtual makVrv::DtCoordinateDisplay * clone() const
Clone a copy of this coordinate display object.
DistanceUnits zUnitsFor(DistanceUnits unit)
Get the z units for this coordinate display (Meters)
DtTaitBryan orientationFor(const DtVector &location, const DtTaitBryan &geocOri, bool local) const
Orientation function.
static void convertWGS84ToSNG(const DtVector &InVector, DtVector &OutVector)
Convert from WGS 84 Geocentric to Swiss National Grid (SNG)
virtual makVrv::DtUnicode zAxisLabel()
Return the label that will be used for z values in the GUI (&quot;Alt &quot; )
virtual std::vector< std::string > convertPositionToStringList(DistanceUnits unit, const DtVector &geocPos, int decimals)
Convert the specified geocPos to an x/y/z list of values, using the specified distance unit (m...
virtual makVrv::DtUnicode yAxisLabel()
Return the label that will be used for y values in the GUI (&quot;N &quot; )

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)