VR-Link API Documentation for HLA Evolved
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
include
matrix
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
41
class
DT_DLL_MATRIX
DtReferenceEllipsoid
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
89
DtMapDatum
myMapDatum
;
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
;
97
double
ellipse_a_sq_over_b
;
98
double
ellipse_e
;
99
double
ellipse_c1
;
100
};
101
104
DT_DLL_MATRIX
DtReferenceEllipsoid
*
DtGlobalEllipsoid
();
105
106
#ifdef DtUSE_UTILITIES_NAMESPACE
107
}
108
#endif
109
110
#endif
111
Document ID: Generated on Wed Oct 23 22:25:48 EDT 2013 from SVN revision 132765
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)