UNCLASSIFIED

GeographicTranslator
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros
EllipsoidParameters.cpp
Go to the documentation of this file.
1 // CLASSIFICATION: UNCLASSIFIED
2 
3 #include <string.h>
4 #include "EllipsoidParameters.h"
5 
6 
7 using namespace MSP::CCS;
8 
9 
11  _semiMajorAxis( 0 ),
12  _flattening( 0 )
13 {
14  strncpy( _ellipsoidCode, " ", 3 );
15 }
16 
17 
18 EllipsoidParameters::EllipsoidParameters( double __semiMajorAxis, double __flattening, const char* __ellipsoidCode ) :
19  _semiMajorAxis( __semiMajorAxis ),
20  _flattening( __flattening )
21 {
22  strncpy( _ellipsoidCode, __ellipsoidCode, 3 );
23  _ellipsoidCode[3] = '\0';
24 }
25 
26 
28 {
29  _semiMajorAxis = ecp._semiMajorAxis;
30  _flattening = ecp._flattening;
31  strncpy( _ellipsoidCode, ecp._ellipsoidCode, 3 );
32  _ellipsoidCode[3] = '\0';
33 }
34 
35 
37 {
38  _semiMajorAxis = 0;
39  _flattening = 0;
40  strncpy( _ellipsoidCode, " ", 3 );
41 }
42 
43 
45 {
46  if( this != &ecp )
47  {
48  _semiMajorAxis = ecp._semiMajorAxis;
49  _flattening = ecp._flattening;
50  strncpy( _ellipsoidCode, ecp._ellipsoidCode, 3 );
51  _ellipsoidCode[3] = '\0';
52  }
53 
54  return *this;
55 }
56 
57 
58 void EllipsoidParameters::setSemiMajorAxis( double __semiMajorAxis )
59 {
60  _semiMajorAxis = __semiMajorAxis;
61 }
62 
63 
64 void EllipsoidParameters::setFlattening( double __flattening )
65 {
66  _flattening = __flattening;
67 }
68 
69 
70 void EllipsoidParameters::setEllipsoidCode( char __ellipsoidCode[4] )
71 {
72  strncpy( _ellipsoidCode, __ellipsoidCode, 3 );
73  _ellipsoidCode[3] = '\0';
74 }
75 
76 
78 {
79  return _semiMajorAxis;
80 }
81 
82 
84 {
85  return _flattening;
86 }
87 
88 
90 {
91  return _ellipsoidCode;
92 }
93 
94 
95 
96 // CLASSIFICATION: UNCLASSIFIED