27 return AuxAngle(numeric_limits<real>::quiet_NaN(),
28 numeric_limits<real>::quiet_NaN());
33 if ( isnan(
tan() ) ||
34 (fabs(_y) > numeric_limits<real>::max()/2 &&
35 fabs(_x) > numeric_limits<real>::max()/2) )
39 real r = hypot(_y, _x),
42 if (isnan(
y))
y = copysign(real(1), _y);
43 if (isnan(
x))
x = copysign(real(1), _x);
48 return AuxAngle(copysign(
y(), p.
y()), copysign(
x(), p.
x()));
54 real
x = _x * p._x - _y * p._y;
55 _y = _y * p._x + _x * p._y;
Header for the GeographicLib::AuxAngle class.
An accurate representation of angles.
AuxAngle normalized() const
AuxAngle & operator+=(const AuxAngle &p)
AuxAngle copyquadrant(const AuxAngle &p) const
AuxAngle(real y=0, real x=1)
Namespace for GeographicLib.