VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtMgrsCoordinateDisplay.h
Go to the documentation of this file.
1 /********************************************************************
2  * Copyright (c) 2011 MaK Technologies, Inc.
3  * All rights reserved.
4  ********************************************************************/
5 /********************************************************************
6  * $RCSfile: DtMgrsCoordinateDisplay.h,v $ $Revision: 1.8 $ $State: Exp $
7  ********************************************************************/
8 
12 
13 #pragma once
15 
16 class DtSpheroid;
17 
18 namespace makVrv
19 {
20  class DtUtmCoordinateConverter;
21 
26  {
27  public:
28 
30 
31  virtual ~DtMgrsCoordinateDisplay();
32 
33  DtCoordinateDisplay* clone() const;
34 
35  virtual DtUnicode name();
36 
39 
42 
45 
46  virtual DtUnicode xAxisLabel();
47  virtual DtUnicode yAxisLabel();
48  virtual DtUnicode zAxisLabel();
49 
54  virtual DtUnicode gridBoxLabel(const DtVector& lowerLeftGeocPos,
55  const DtVector& upperRightGeocPos );
56 
58  virtual DtUnicode northSouthGridLabel(
60  const DtVector& geocPos, int decimals, double gridSpacing );
61 
63  virtual DtUnicode eastWestGridLabel(
65  const DtVector& geocPos, int decimals, double gridSpacing );
66 
67  virtual bool clipXToGrid( double inStartX, double inEndX, double constantY,
68  double& clippedStartX, double& clippedEndX );
69 
71  virtual bool clipYToGrid( double inStartY, double inEndY, double constantX,
72  double& clippedStartY, double& clippedEndY );
73 
74  // Maximum grid spacing allowed. Constrain to 100,000 (one map sheet)
75  virtual double maxGridSpacing() const;
76 
77  // Minimum grid spacing allowed. Constrain to 1 meter
78  virtual double minGridSpacing() const;
79 
80  virtual std::vector<std::string> convertPositionToStringList(
82  const DtVector& geocPos, int decimals );
83 
87  virtual void convertToGeocentric(
88  const std::string& x, const std::string& y, const std::string& z,
91  DtVector& vector );
92 
95  virtual void regularExpressionValidator( std::string& x,
96  std::string& y, std::string& z );
97 
98  protected:
99 
101  virtual void initializeMilGridEllipsoid();
102 
104  virtual void adjustMeridianOffsets(DtUtmCoordinateConverter* conv,
105  double utmXCoord, double utmYCoord,
106  double& meridianOffsetStart, double& meridianOffsetEnd);
107 
110  virtual void adjustStartEndDeg(DtUtmCoordinateConverter* conv,
111  double constantX, double clippedStartY, double clippedEndY,
112  double& startDeg, double& endDeg);
113 
116  bool isInSpecialZoneLon(DtUtmCoordinateConverter* conv,
117  double constantX, double clippedStartY, double clippedEndY);
118 
119  protected:
120 
122  static bool spheroidsEqual( const DtSpheroid& sph1, const DtSpheroid& sph2 );
123 
124  };
125 
126 }

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)