VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtMgrsCoordinateDisplay.h
Go to the documentation of this file.
1 /********************************************************************
2  * Copyright (c) 2020 MaK Technologies, Inc.
3  * All rights reserved.
4  ********************************************************************/
5 
9 
10 #pragma once
12 
13 class DtSpheroid;
14 
15 namespace makVrv
16 {
17  class DtUtmCoordinateConverter;
18 
23  {
24  public:
25 
27 
28  virtual ~DtMgrsCoordinateDisplay();
29 
30  DtCoordinateDisplay* clone() const;
31 
32  virtual DtUnicode name();
33 
36 
39 
42 
43  virtual DtUnicode xAxisLabel();
44  virtual DtUnicode yAxisLabel();
45  virtual DtUnicode zAxisLabel();
46 
51  virtual DtUnicode gridBoxLabel(const DtVector& lowerLeftGeocPos,
52  const DtVector& upperRightGeocPos );
53 
60  virtual DtUnicode northSouthGridLabel(
62  const DtVector& geocPos, int decimals, double gridSpacing, bool minimal);
63 
70  virtual DtUnicode eastWestGridLabel(
72  const DtVector& geocPos, int decimals, double gridSpacing, bool minimal);
73 
74  virtual bool clipXToGrid( double inStartX, double inEndX, double constantY,
75  double& clippedStartX, double& clippedEndX );
76 
78  virtual bool clipYToGrid( double inStartY, double inEndY, double constantX,
79  double& clippedStartY, double& clippedEndY );
80 
81  // Maximum grid spacing allowed. Constrain to 100,000 (one map sheet)
82  virtual double maxGridSpacing() const;
83 
84  // Minimum grid spacing allowed. Constrain to 1 meter
85  virtual double minGridSpacing() const;
86 
87  virtual std::vector<std::string> convertPositionToStringList(
89  const DtVector& geocPos, int decimals );
90 
96  virtual std::vector<DtUnicode> convertPositionToNotatedStringList(
97  DistanceUnits unit, DtUnicode unitNotation, const DtVector& geocPos, int decimals);
98 
102  virtual void convertToGeocentric(
103  const std::string& x, const std::string& y, const std::string& z,
106  DtVector& vector );
107 
110  virtual void regularExpressionValidator( std::string& x,
111  std::string& y, std::string& z );
112 
113  protected:
114 
116  virtual void initializeMilGridEllipsoid();
117 
119  virtual void adjustMeridianOffsets(DtUtmCoordinateConverter* conv,
120  double utmXCoord, double utmYCoord,
121  double& meridianOffsetStart, double& meridianOffsetEnd);
122 
125  virtual void adjustStartEndDeg(DtUtmCoordinateConverter* conv,
126  double constantX, double clippedStartY, double clippedEndY,
127  double& startDeg, double& endDeg);
128 
131  bool isInSpecialZoneLon(DtUtmCoordinateConverter* conv,
132  double constantX, double clippedStartY, double clippedEndY);
133 
134  protected:
135 
137  static bool spheroidsEqual( const DtSpheroid& sph1, const DtSpheroid& sph2 );
138 
139  };
140 
141 }
Instances of DtUtmCoordSystem provide transformations and utilities for converting between network an...
Definition: DtUtmCoordinateConverter.h:20
Contains the DtUtmCoordinateSystem class declaration.
The military grid reference system coordinate system conversion for the GUI.
Definition: DtMgrsCoordinateDisplay.h:22
A unicode string.
Definition: DtUnicode.h:33
#define DT_DLL_VRVUTIL
Definition: vrvUtil.h:34
Abstract interface class for all coordinate system displays.
Definition: DtCoordinateDisplay.h:24
DistanceUnits
Enumeration of the different distance units.
Definition: DtDisplayUnitsSettingsRecord.h:56
Coordinate system display for UTM coordinates.
Definition: DtUtmCoordinateDisplay.h:20
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:41

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)