18 #if !defined(GEOGRAPHICLIB_AUXLATITUDE_HPP) 19 #define GEOGRAPHICLIB_AUXLATITUDE_HPP 1 25 #if !defined(GEOGRAPHICLIB_AUXLATITUDE_ORDER) 32 # define GEOGRAPHICLIB_AUXLATITUDE_ORDER \ 33 (GEOGRAPHICLIB_PRECISION == 2 || GEOGRAPHICLIB_PRECISION >= 5 ? 6 : \ 34 (GEOGRAPHICLIB_PRECISION == 1 ? 4 : 8)) 161 GEODETIC = GEOGRAPHIC,
166 REDUCED = PARAMETRIC,
217 bool exact =
false)
const;
236 Math::real Convert(
int auxin,
int auxout,
real zeta,
bool exact =
false)
264 int* niter =
nullptr)
const;
272 Math::real RectifyingRadius(
bool exact =
false)
const;
280 Math::real AuthalicRadiusSquared(
bool exact =
false)
const;
309 const real c[],
int K);
324 static const int numit_ = 1000;
325 real tol_, bmin_, bmax_;
375 real _a, _b, _f, _fm1, _e2, _e2m1, _e12, _e12p1, _n, _e, _e1, _n2, _q;
377 mutable real _c[Lmax * AUXNUMBER * AUXNUMBER];
379 static int ind(
int auxout,
int auxin) {
380 return (auxout >= 0 && auxout < AUXNUMBER &&
381 auxin >= 0 && auxin < AUXNUMBER) ?
382 AUXNUMBER * auxout + auxin : -1;
386 {
using std::hypot;
return hypot(
real(1), tphi); }
389 using std::isinf, std::copysign;
390 return isinf(tphi) ? copysign(
real(1), tphi) : tphi / sc(tphi);
393 void fillcoeff(
int auxin,
int auxout,
int k)
const;
406 #endif // GEOGRAPHICLIB_AUXLATITUDE_HPP
#define GEOGRAPHICLIB_EXPORT
An accurate representation of angles.
Math::real Flattening() const
Header for GeographicLib::Math class.
Header for the GeographicLib::AuxAngle class.
Namespace for GeographicLib.
GeographicLib::Math::real real
Math::real EquatorialRadius() const
#define GEOGRAPHICLIB_AUXLATITUDE_ORDER
Conversions between auxiliary latitudes.
Math::real PolarSemiAxis() const
static AuxLatitude axes(real a, real b)