10 #if !defined(GEOGRAPHICLIB_GEODESICLINE_HPP) 11 #define GEOGRAPHICLIB_GEODESICLINE_HPP 1 63 static const int nC1_ = Geodesic::nC1_;
64 static const int nC1p_ = Geodesic::nC1p_;
65 static const int nC2_ = Geodesic::nC2_;
66 static const int nC3_ = Geodesic::nC3_;
67 static const int nC4_ = Geodesic::nC4_;
70 real _lat1, _lon1, _azi1;
71 real _a, _f, _b, _c2, _f1, _salp0, _calp0, _k2,
72 _salp1, _calp1, _ssig1, _csig1, _dn1, _stau1, _ctau1, _somg1, _comg1,
73 _A1m1, _A2m1, _A3c, _B11, _B21, _B31, _A4, _B41;
75 real _C1a[nC1_ + 1], _C1pa[nC1p_ + 1], _C2a[nC2_ + 1], _C3a[nC3_],
80 CAP_NONE = Geodesic::CAP_NONE,
81 CAP_C1 = Geodesic::CAP_C1,
82 CAP_C1p = Geodesic::CAP_C1p,
83 CAP_C2 = Geodesic::CAP_C2,
84 CAP_C3 = Geodesic::CAP_C3,
85 CAP_C4 = Geodesic::CAP_C4,
86 CAP_ALL = Geodesic::CAP_ALL,
87 CAP_MASK = Geodesic::CAP_MASK,
88 OUT_ALL = Geodesic::OUT_ALL,
89 OUT_MASK = Geodesic::OUT_MASK,
156 LONG_NOWRAP = LONG_UNROLL,
210 unsigned caps = ALL);
265 real& lat2, real& lon2, real& azi2,
266 real& m12, real& M12, real& M21,
269 return GenPosition(
false, s12,
270 LATITUDE | LONGITUDE | AZIMUTH |
271 REDUCEDLENGTH | GEODESICSCALE | AREA,
272 lat2, lon2, azi2, t, m12, M12, M21, S12);
280 return GenPosition(
false, s12,
281 LATITUDE | LONGITUDE,
282 lat2, lon2, t, t, t, t, t, t);
291 return GenPosition(
false, s12,
292 LATITUDE | LONGITUDE | AZIMUTH,
293 lat2, lon2, azi2, t, t, t, t, t);
300 real& azi2, real& m12)
const {
302 return GenPosition(
false, s12,
303 LATITUDE | LONGITUDE |
304 AZIMUTH | REDUCEDLENGTH,
305 lat2, lon2, azi2, t, m12, t, t, t);
312 real& azi2, real& M12, real& M21)
315 return GenPosition(
false, s12,
316 LATITUDE | LONGITUDE |
317 AZIMUTH | GEODESICSCALE,
318 lat2, lon2, azi2, t, t, M12, M21, t);
325 real& lat2, real& lon2, real& azi2,
326 real& m12, real& M12, real& M21)
329 return GenPosition(
false, s12,
330 LATITUDE | LONGITUDE | AZIMUTH |
331 REDUCEDLENGTH | GEODESICSCALE,
332 lat2, lon2, azi2, t, m12, M12, M21, t);
379 real& s12, real& m12, real& M12, real& M21,
381 GenPosition(
true, a12,
382 LATITUDE | LONGITUDE | AZIMUTH | DISTANCE |
383 REDUCEDLENGTH | GEODESICSCALE | AREA,
384 lat2, lon2, azi2, s12, m12, M12, M21, S12);
393 GenPosition(
true, a12,
394 LATITUDE | LONGITUDE,
395 lat2, lon2, t, t, t, t, t, t);
402 real& lat2, real& lon2, real& azi2)
405 GenPosition(
true, a12,
406 LATITUDE | LONGITUDE | AZIMUTH,
407 lat2, lon2, azi2, t, t, t, t, t);
416 GenPosition(
true, a12,
417 LATITUDE | LONGITUDE | AZIMUTH | DISTANCE,
418 lat2, lon2, azi2, s12, t, t, t, t);
425 real& s12, real& m12)
const {
427 GenPosition(
true, a12,
428 LATITUDE | LONGITUDE | AZIMUTH |
429 DISTANCE | REDUCEDLENGTH,
430 lat2, lon2, azi2, s12, m12, t, t, t);
437 real& s12, real& M12, real& M21)
440 GenPosition(
true, a12,
441 LATITUDE | LONGITUDE | AZIMUTH |
442 DISTANCE | GEODESICSCALE,
443 lat2, lon2, azi2, s12, t, M12, M21, t);
450 real& s12, real& m12, real& M12, real& M21)
453 GenPosition(
true, a12,
454 LATITUDE | LONGITUDE | AZIMUTH |
455 DISTANCE | REDUCEDLENGTH | GEODESICSCALE,
456 lat2, lon2, azi2, s12, m12, M12, M21, t);
524 Math::real GenPosition(
bool arcmode, real s12_a12,
unsigned outmask,
525 real& lat2, real& lon2, real& azi2,
526 real& s12, real& m12, real& M12, real& M21,
538 bool Init()
const {
return _caps != 0U; }
613 return (_caps & testcaps) == testcaps;
621 #endif // GEOGRAPHICLIB_GEODESICLINE_HPP Math::real Position(real s12, real &lat2, real &lon2, real &azi2) const
Math::real MajorRadius() const
#define GEOGRAPHICLIB_EXPORT
GeographicLib::Math::real real
Math::real Position(real s12, real &lat2, real &lon2, real &azi2, real &m12, real &M12, real &M21, real &S12) const
void ArcPosition(real a12, real &lat2, real &lon2, real &azi2) const
void ArcPosition(real a12, real &lat2, real &lon2, real &azi2, real &s12) const
Math::real Flattening() const
Header for GeographicLib::Geodesic class.
Math::real Position(real s12, real &lat2, real &lon2, real &azi2, real &m12, real &M12, real &M21) const
void ArcPosition(real a12, real &lat2, real &lon2) const
Math::real Longitude() const
Namespace for GeographicLib.
Math::real EquatorialArc() const
Math::real Latitude() const
void ArcPosition(real a12, real &lat2, real &lon2, real &azi2, real &s12, real &m12) const
Math::real Position(real s12, real &lat2, real &lon2, real &azi2, real &m12) const
unsigned Capabilities() const
Math::real Azimuth() const
bool Capabilities(unsigned testcaps) const
Math::real Position(real s12, real &lat2, real &lon2, real &azi2, real &M12, real &M21) const
Header for GeographicLib::Constants class.
void ArcPosition(real a12, real &lat2, real &lon2, real &azi2, real &s12, real &m12, real &M12, real &M21) const
Math::real Position(real s12, real &lat2, real &lon2) const
Math::real EquatorialAzimuth() const
void ArcPosition(real a12, real &lat2, real &lon2, real &azi2, real &s12, real &m12, real &M12, real &M21, real &S12) const
void ArcPosition(real a12, real &lat2, real &lon2, real &azi2, real &s12, real &M12, real &M21) const