VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
referenceEllipsoid.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 
7 #ifndef GeodeticEllipsoid_H_
8 #define GeodeticEllipsoid_H_
9 
10 #include <vlutil/vlNetTypes.h>
11 #include "vlVector.h"
12 #include <vlutil/vlMachineTypes.h>
13 #include "mapDatum.h"
14 
19 
20 #ifdef DtUSE_UTILITIES_NAMESPACE
21 namespace DtUSE_UTILITIES_NAMESPACE
22 {
23 #endif
24 
25 
42 {
43 public:
44  DtReferenceEllipsoid( const DtMapDatum& datum );
45  virtual ~DtReferenceEllipsoid();
46 
47  void useMapDatum( const DtMapDatum& datum );
48  const DtMapDatum& mapDatum() const;
49 
50  void geocentricToGeodetic( const DtVector& gc, DtVector& gd ) const;
51  void geodeticToGeocentric( const DtVector& gd, DtVector& gc ) const;
52 
53 protected:
54 
55  void initialize_ellipsoid( double a, double f );
56  void geo_to_rad( double deg, double min, double sec, double* radian ) const;
57  void rad_to_geo( double radian, double* deg, double* min, double* sec ) const;
58 
59 
60 
61  void geodetic_to_geocentric( double lat, double lon, double height,
62  double* x, double* y, double* z ) const;
63 
73  void geocentric_to_geodetic( double xp, double yp, double zp,
74  double* lat, double* lon, double* height ) const;
75 
76 public:
77 
81  static void setMaxIterationsForConvergence(unsigned int maxItr);
82 
84  static unsigned int maxIterationsForConvergence();
85 protected:
86 
87  static unsigned int theMaxIterationsForConvergence;
88 
90  int myInited;
91 
92  double ellipse_a;
93  double ellipse_a_sq;
94  double ellipse_f;
95  double ellipse_b;
96  double ellipse_b_sq;
98  double ellipse_e;
99  double ellipse_c1;
100 };
101 
105 
106 #ifdef DtUSE_UTILITIES_NAMESPACE
107 }
108 #endif
109 
110 #endif
111 

Document ID: Generated on Wed Jan 7 13:31:29 EST 2015 from SVN revision 149162
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)