18 const char BADALLOC[] =
"Failed to allocate memory for a GeographicLib::GeodesicLineExact";
23 if ( m_pGeodesicLineExact !=
NULL )
25 delete m_pGeodesicLineExact;
26 m_pGeodesicLineExact =
NULL;
38 g->GetUnmanaged()->ToPointer() );
40 *pGeodesicExact, lat1, lon1, azi1,
static_cast<unsigned>(caps) );
42 catch ( std::bad_alloc )
56 catch (std::bad_alloc)
70 static_cast<unsigned>(caps) );
72 catch ( std::bad_alloc )
80 [System::Runtime::InteropServices::Out]
double% lat2,
81 [System::Runtime::InteropServices::Out]
double% lon2,
82 [System::Runtime::InteropServices::Out]
double% azi2,
83 [System::Runtime::InteropServices::Out]
double% m12,
84 [System::Runtime::InteropServices::Out]
double% M12,
85 [System::Runtime::InteropServices::Out]
double% M21,
86 [System::Runtime::InteropServices::Out]
double% S12)
88 double llat2, llon2, lazi2, lm12, lM12, lM21, lS12;
90 lm12, lM12, lM21, lS12 );
103 [System::Runtime::InteropServices::Out]
double% lat2,
104 [System::Runtime::InteropServices::Out]
double% lon2)
115 [System::Runtime::InteropServices::Out]
double% lat2,
116 [System::Runtime::InteropServices::Out]
double% lon2,
117 [System::Runtime::InteropServices::Out]
double% azi2)
119 double llat2, llon2, lazi2;
129 [System::Runtime::InteropServices::Out]
double% lat2,
130 [System::Runtime::InteropServices::Out]
double% lon2,
131 [System::Runtime::InteropServices::Out]
double% azi2,
132 [System::Runtime::InteropServices::Out]
double% m12)
134 double llat2, llon2, lazi2, lm12;
146 [System::Runtime::InteropServices::Out]
double% lat2,
147 [System::Runtime::InteropServices::Out]
double% lon2,
148 [System::Runtime::InteropServices::Out]
double% azi2,
149 [System::Runtime::InteropServices::Out]
double% M12,
150 [System::Runtime::InteropServices::Out]
double% M21)
152 double llat2, llon2, lazi2, lM12, lM21;
165 [System::Runtime::InteropServices::Out]
double% lat2,
166 [System::Runtime::InteropServices::Out]
double% lon2,
167 [System::Runtime::InteropServices::Out]
double% azi2,
168 [System::Runtime::InteropServices::Out]
double% m12,
169 [System::Runtime::InteropServices::Out]
double% M12,
170 [System::Runtime::InteropServices::Out]
double% M21)
172 double llat2, llon2, lazi2, lm12, lM12, lM21;
186 [System::Runtime::InteropServices::Out]
double% lat2,
187 [System::Runtime::InteropServices::Out]
double% lon2,
188 [System::Runtime::InteropServices::Out]
double% azi2,
189 [System::Runtime::InteropServices::Out]
double% s12,
190 [System::Runtime::InteropServices::Out]
double% m12,
191 [System::Runtime::InteropServices::Out]
double% M12,
192 [System::Runtime::InteropServices::Out]
double% M21,
193 [System::Runtime::InteropServices::Out]
double% S12)
195 double llat2, llon2, lazi2, ls12, lm12, lM12, lM21, lS12;
197 lm12, lM12, lM21, lS12 );
210 [System::Runtime::InteropServices::Out]
double% lat2,
211 [System::Runtime::InteropServices::Out]
double% lon2)
221 [System::Runtime::InteropServices::Out]
double% lat2,
222 [System::Runtime::InteropServices::Out]
double% lon2,
223 [System::Runtime::InteropServices::Out]
double% azi2)
225 double llat2, llon2, lazi2;
234 [System::Runtime::InteropServices::Out]
double% lat2,
235 [System::Runtime::InteropServices::Out]
double% lon2,
236 [System::Runtime::InteropServices::Out]
double% azi2,
237 [System::Runtime::InteropServices::Out]
double% s12)
239 double llat2, llon2, lazi2, ls12;
249 [System::Runtime::InteropServices::Out]
double% lat2,
250 [System::Runtime::InteropServices::Out]
double% lon2,
251 [System::Runtime::InteropServices::Out]
double% azi2,
252 [System::Runtime::InteropServices::Out]
double% s12,
253 [System::Runtime::InteropServices::Out]
double% m12)
255 double llat2, llon2, lazi2, ls12, lm12;
267 [System::Runtime::InteropServices::Out]
double% lat2,
268 [System::Runtime::InteropServices::Out]
double% lon2,
269 [System::Runtime::InteropServices::Out]
double% azi2,
270 [System::Runtime::InteropServices::Out]
double% s12,
271 [System::Runtime::InteropServices::Out]
double% M12,
272 [System::Runtime::InteropServices::Out]
double% M21)
274 double llat2, llon2, lazi2, ls12, lM12, lM21;
287 [System::Runtime::InteropServices::Out]
double% lat2,
288 [System::Runtime::InteropServices::Out]
double% lon2,
289 [System::Runtime::InteropServices::Out]
double% azi2,
290 [System::Runtime::InteropServices::Out]
double% s12,
291 [System::Runtime::InteropServices::Out]
double% m12,
292 [System::Runtime::InteropServices::Out]
double% M12,
293 [System::Runtime::InteropServices::Out]
double% M21)
295 double llat2, llon2, lazi2, ls12, lm12, lM12, lM21;
310 [System::Runtime::InteropServices::Out]
double% lat2,
311 [System::Runtime::InteropServices::Out]
double% lon2,
312 [System::Runtime::InteropServices::Out]
double% azi2,
313 [System::Runtime::InteropServices::Out]
double% s12,
314 [System::Runtime::InteropServices::Out]
double% m12,
315 [System::Runtime::InteropServices::Out]
double% M12,
316 [System::Runtime::InteropServices::Out]
double% M21,
317 [System::Runtime::InteropServices::Out]
double% S12)
319 double llat2, llon2, lazi2, ls12, lm12, lM12, lM21, lS12;
321 static_cast<unsigned>(outmask),
322 llat2, llon2, lazi2, ls12, lm12, lM12, lM21, lS12 );
336 {
return m_pGeodesicLineExact->Latitude(); }
340 {
return m_pGeodesicLineExact->Longitude(); }
344 {
return m_pGeodesicLineExact->Azimuth(); }
348 {
return m_pGeodesicLineExact->EquatorialAzimuth(); }
352 {
return m_pGeodesicLineExact->EquatorialArc(); }
356 {
return m_pGeodesicLineExact->MajorRadius(); }
360 {
return m_pGeodesicLineExact->Flattening(); }
364 {
return m_pGeodesicLineExact->Distance(); }
368 {
return m_pGeodesicLineExact->Arc(); }