20 const char BADALLOC[] =
"Failed to allocate memory for a GeographicLib::Geodesic";
25 if ( m_pGeodesic !=
NULL )
39 catch ( std::bad_alloc err )
56 catch ( std::bad_alloc )
64 [System::Runtime::InteropServices::Out]
double% lat2,
65 [System::Runtime::InteropServices::Out]
double% lon2,
66 [System::Runtime::InteropServices::Out]
double% azi2,
67 [System::Runtime::InteropServices::Out]
double% m12,
68 [System::Runtime::InteropServices::Out]
double% M12,
69 [System::Runtime::InteropServices::Out]
double% M21,
70 [System::Runtime::InteropServices::Out]
double% S12)
72 double llat2, llon2, lazi2, lm12, lM12, lM21, lS12;
74 llat2, llon2, lazi2, lm12, lM12, lM21, lS12);
87 [System::Runtime::InteropServices::Out]
double% lat2,
88 [System::Runtime::InteropServices::Out]
double% lon2)
100 [System::Runtime::InteropServices::Out]
double% lat2,
101 [System::Runtime::InteropServices::Out]
double% lon2,
102 [System::Runtime::InteropServices::Out]
double% azi2)
104 double llat2, llon2, lazi2;
106 llat2, llon2, lazi2 );
115 [System::Runtime::InteropServices::Out]
double% lat2,
116 [System::Runtime::InteropServices::Out]
double% lon2,
117 [System::Runtime::InteropServices::Out]
double% azi2,
118 [System::Runtime::InteropServices::Out]
double% m12)
120 double llat2, llon2, lazi2, lm12;
122 llat2, llon2, lazi2, lm12 );
132 [System::Runtime::InteropServices::Out]
double% lat2,
133 [System::Runtime::InteropServices::Out]
double% lon2,
134 [System::Runtime::InteropServices::Out]
double% azi2,
135 [System::Runtime::InteropServices::Out]
double% M12,
136 [System::Runtime::InteropServices::Out]
double% M21)
138 double llat2, llon2, lazi2, lM12, lM21;
140 llat2, llon2, lazi2, lM12, lM21);
151 [System::Runtime::InteropServices::Out]
double% lat2,
152 [System::Runtime::InteropServices::Out]
double% lon2,
153 [System::Runtime::InteropServices::Out]
double% azi2,
154 [System::Runtime::InteropServices::Out]
double% m12,
155 [System::Runtime::InteropServices::Out]
double% M12,
156 [System::Runtime::InteropServices::Out]
double% M21)
158 double llat2, llon2, lazi2, lm12, lM12, lM21;
160 llat2, llon2, lazi2, lm12, lM12, lM21 );
172 [System::Runtime::InteropServices::Out]
double% lat2,
173 [System::Runtime::InteropServices::Out]
double% lon2,
174 [System::Runtime::InteropServices::Out]
double% azi2,
175 [System::Runtime::InteropServices::Out]
double% s12,
176 [System::Runtime::InteropServices::Out]
double% m12,
177 [System::Runtime::InteropServices::Out]
double% M12,
178 [System::Runtime::InteropServices::Out]
double% M21,
179 [System::Runtime::InteropServices::Out]
double% S12)
181 double llat2, llon2, lazi2, ls12, lm12, lM12, lM21, lS12;
183 llat2, llon2, lazi2, ls12, lm12, lM12, lM21, lS12);
196 [System::Runtime::InteropServices::Out]
double% lat2,
197 [System::Runtime::InteropServices::Out]
double% lon2)
207 [System::Runtime::InteropServices::Out]
double% lat2,
208 [System::Runtime::InteropServices::Out]
double% lon2,
209 [System::Runtime::InteropServices::Out]
double% azi2)
211 double llat2, llon2, lazi2;
220 [System::Runtime::InteropServices::Out]
double% lat2,
221 [System::Runtime::InteropServices::Out]
double% lon2,
222 [System::Runtime::InteropServices::Out]
double% azi2,
223 [System::Runtime::InteropServices::Out]
double% s12)
225 double llat2, llon2, lazi2, ls12;
227 llat2, llon2, lazi2, ls12 );
236 [System::Runtime::InteropServices::Out]
double% lat2,
237 [System::Runtime::InteropServices::Out]
double% lon2,
238 [System::Runtime::InteropServices::Out]
double% azi2,
239 [System::Runtime::InteropServices::Out]
double% s12,
240 [System::Runtime::InteropServices::Out]
double% m12)
242 double llat2, llon2, lazi2, ls12, lm12;
244 llat2, llon2, lazi2, ls12, lm12 );
254 [System::Runtime::InteropServices::Out]
double% lat2,
255 [System::Runtime::InteropServices::Out]
double% lon2,
256 [System::Runtime::InteropServices::Out]
double% azi2,
257 [System::Runtime::InteropServices::Out]
double% s12,
258 [System::Runtime::InteropServices::Out]
double% M12,
259 [System::Runtime::InteropServices::Out]
double% M21)
261 double llat2, llon2, lazi2, ls12, lM12, lM21;
263 llat2, llon2, lazi2, ls12, lM12, lM21 );
274 [System::Runtime::InteropServices::Out]
double% lat2,
275 [System::Runtime::InteropServices::Out]
double% lon2,
276 [System::Runtime::InteropServices::Out]
double% azi2,
277 [System::Runtime::InteropServices::Out]
double% s12,
278 [System::Runtime::InteropServices::Out]
double% m12,
279 [System::Runtime::InteropServices::Out]
double% M12,
280 [System::Runtime::InteropServices::Out]
double% M21)
282 double llat2, llon2, lazi2, ls12, lm12, lM12, lM21;
284 llat2, llon2, lazi2, ls12, lm12, lM12, lM21);
296 bool arcmode,
double s12_a12,
298 [System::Runtime::InteropServices::Out]
double% lat2,
299 [System::Runtime::InteropServices::Out]
double% lon2,
300 [System::Runtime::InteropServices::Out]
double% azi2,
301 [System::Runtime::InteropServices::Out]
double% s12,
302 [System::Runtime::InteropServices::Out]
double% m12,
303 [System::Runtime::InteropServices::Out]
double% M12,
304 [System::Runtime::InteropServices::Out]
double% M21,
305 [System::Runtime::InteropServices::Out]
double% S12)
307 double llat2, llon2, lazi2, lm12, lM12, lM21, ls12, lS12;
309 static_cast<unsigned>(outmask),
310 llat2, llon2, lazi2, ls12, lm12, lM12, lM21, lS12);
324 [System::Runtime::InteropServices::Out]
double% s12,
325 [System::Runtime::InteropServices::Out]
double% azi1,
326 [System::Runtime::InteropServices::Out]
double% azi2,
327 [System::Runtime::InteropServices::Out]
double% m12,
328 [System::Runtime::InteropServices::Out]
double% M12,
329 [System::Runtime::InteropServices::Out]
double% M21,
330 [System::Runtime::InteropServices::Out]
double% S12)
332 double ls12, lazi1, lazi2, lm12, lM12, lM21, lS12;
334 ls12, lazi1, lazi2, lm12, lM12, lM21, lS12);
347 [System::Runtime::InteropServices::Out]
double% s12)
357 [System::Runtime::InteropServices::Out]
double% azi1,
358 [System::Runtime::InteropServices::Out]
double% azi2)
369 [System::Runtime::InteropServices::Out]
double% s12,
370 [System::Runtime::InteropServices::Out]
double% azi1,
371 [System::Runtime::InteropServices::Out]
double% azi2)
373 double ls12, lazi1, lazi2;
375 ls12, lazi1, lazi2 );
384 [System::Runtime::InteropServices::Out]
double% s12,
385 [System::Runtime::InteropServices::Out]
double% azi1,
386 [System::Runtime::InteropServices::Out]
double% azi2,
387 [System::Runtime::InteropServices::Out]
double% m12)
389 double ls12, lazi1, lazi2, lm12;
391 ls12, lazi1, lazi2, lm12 );
401 [System::Runtime::InteropServices::Out]
double% s12,
402 [System::Runtime::InteropServices::Out]
double% azi1,
403 [System::Runtime::InteropServices::Out]
double% azi2,
404 [System::Runtime::InteropServices::Out]
double% M12,
405 [System::Runtime::InteropServices::Out]
double% M21)
407 double ls12, lazi1, lazi2, lM12, lM21;
409 ls12, lazi1, lazi2, lM12, lM21 );
420 [System::Runtime::InteropServices::Out]
double% s12,
421 [System::Runtime::InteropServices::Out]
double% azi1,
422 [System::Runtime::InteropServices::Out]
double% azi2,
423 [System::Runtime::InteropServices::Out]
double% m12,
424 [System::Runtime::InteropServices::Out]
double% M12,
425 [System::Runtime::InteropServices::Out]
double% M21)
427 double ls12, lazi1, lazi2, lm12, lM12, lM21;
429 ls12, lazi1, lazi2, lm12, lM12, lM21 );
442 [System::Runtime::InteropServices::Out]
double% s12,
443 [System::Runtime::InteropServices::Out]
double% azi1,
444 [System::Runtime::InteropServices::Out]
double% azi2,
445 [System::Runtime::InteropServices::Out]
double% m12,
446 [System::Runtime::InteropServices::Out]
double% M12,
447 [System::Runtime::InteropServices::Out]
double% M21,
448 [System::Runtime::InteropServices::Out]
double% S12)
450 double ls12, lazi1, lazi2, lm12, lM12, lM21, lS12;
452 static_cast<unsigned>(outmask),
453 ls12, lazi1, lazi2, lm12, lM12, lM21, lS12);
474 return gcnew GeodesicLine(
this, lat1, lon1, azi1, caps );
482 lon2,
static_cast<unsigned int>(caps)));
490 s12,
static_cast<unsigned int>(caps)));
498 a12,
static_cast<unsigned int>(caps)));
506 arcmode, s12_a12,
static_cast<unsigned int>(caps)));