1 #ifndef SDK_CRS_WGS84_IMPL_H_
10 #define SDK_CRS_WGS84_IMPL_H_
15 #include <base/inc/sdk_component_base.h>
26 class EllipsoidWGS84 :
public SDKComponentBaseI< IEllipsoid > {
35 {
return Err_NotImpl; }
38 double SDK_CALLTYPE GetInverseFlattening()
const throw()
40 SDKResult SDK_CALLTYPE SetInverseFlattening(
double inv_flat)
throw()
41 {
return Err_NotImpl; }
43 double SDK_CALLTYPE GetSemiMajorAxis()
const throw() {
46 SDKResult SDK_CALLTYPE SetSemiMajorAxis(
double semi_major_axis)
throw()
47 {
return Err_NotImpl; }
49 double SDK_CALLTYPE GetSemiMinorAxis()
const throw() {
52 SDKResult SDK_CALLTYPE SetSemiMinorAxis(
double semi_minor_axis)
throw()
53 {
return Err_NotImpl; }
55 LinearUnit SDK_CALLTYPE GetAxisUnit()
const throw() {
63 class GeographicCoordinateSystemWGS84 :
public SDKComponentRef,
64 public IGeographicCoordinateSystem {
66 BEGIN_GET_INTERFACE(SDKComponentRef)
67 GET_INTERFACE_ENTRY(IGeographicCoordinateSystem)
68 GET_INTERFACE_ENTRY(IHorizontalCoordinateSystem)
69 GET_INTERFACE_ENTRY(ICoordinateSystem)
70 END_GET_INTERFACE(SDKComponentRef)
72 GeographicCoordinateSystemWGS84(
74 : m_angular_unit_type(angular_unit_type), m_dim(2) {}
86 SDKResult SDK_CALLTYPE GetEllipsoid(IEllipsoid** ellipsoid)
const throw() {
88 *ellipsoid =
new EllipsoidWGS84();
89 (*ellipsoid)->AddRef();
92 SDKResult SDK_CALLTYPE SetEllipsoid(IEllipsoid* ellipsoid)
throw() {
98 AngularUnit SDK_CALLTYPE GetAngularUnit()
const throw() {
return 1.0; }
100 {
return Err_NotImpl; }
104 {
return m_angular_unit_type; }
105 SDKResult SDK_CALLTYPE SetAngularUnitType(
107 { m_angular_unit_type = angular_unit_type;
return Ok; }
112 double SDK_CALLTYPE GetPrimeMeridian()
const throw() {
return 0.0; }
113 SDKResult SDK_CALLTYPE SetPrimeMeridian(
double longitude)
throw()
114 {
return Err_NotImpl; }
117 SDKResult SDK_CALLTYPE GetName(SDKString& name)
const throw()
119 SDKResult SDK_CALLTYPE SetName(
const SDKString& name)
throw()
120 { m_name = name;
return Ok; }
123 SDKUInt8 SDK_CALLTYPE GetDimension()
const throw() {
return m_dim; }
124 SDKResult SDK_CALLTYPE SetDimension(SDKUInt8 dim)
throw() {
125 m_dim = dim;
return Ok;}
128 SDKResult SDK_CALLTYPE GetParameter(SDKUInt32 parameter,
129 SDKAny& value)
const throw() {
return Err_NotImpl; }
130 SDKResult SDK_CALLTYPE SetParameter(SDKUInt32 parameter,
131 const SDKAny& value)
throw() {
return Err_NotImpl; }
142 #endif // SDK_CRS_WGS84_IMPL_H_