/**
  * See the documentation for GeodesicExact::Inverse.
  **********************************************************************/
 Math::real Inverse(real lat1, real lon1, real lat2, real lon2,
                    real& azi1, real& azi2) const {
     real t;
     return GenInverse(lat1, lon1, lat2, lon2,
                       AZIMUTH,
                       t, azi1, azi2, t, t, t, t);
 }
 /**
  * See the documentation for GeodesicExact::Inverse.
  **********************************************************************/
 Math::real Inverse(real lat1, real lon1, real lat2, real lon2,
                    real& s12) const {
     real t;
     return GenInverse(lat1, lon1, lat2, lon2,
                       DISTANCE,
                       s12, t, t, t, t, t, t);
 }
 /**
  * See the documentation for GeodesicExact::Inverse.
  **********************************************************************/
 Math::real Inverse(real lat1, real lon1, real lat2, real lon2,
                    real& s12, real& azi1, real& azi2,
                    real& M12, real& M21) const {
     real t;
     return GenInverse(lat1, lon1, lat2, lon2,
                       DISTANCE | AZIMUTH | GEODESICSCALE,
                       s12, azi1, azi2, t, M12, M21, t);
 }
 /**
  * See the documentation for GeodesicExact::Inverse.
  **********************************************************************/
 Math::real Inverse(real lat1, real lon1, real lat2, real lon2,
                    real& s12, real& azi1, real& azi2, real& m12)
 const {
     real t;
     return GenInverse(lat1, lon1, lat2, lon2,
                       DISTANCE | AZIMUTH | REDUCEDLENGTH,
                       s12, azi1, azi2, m12, t, t, t);
 }
 /**
  * Perform the inverse geodesic calculation.
  *
  * @param[in] lat1 latitude of point 1 (degrees).
  * @param[in] lon1 longitude of point 1 (degrees).
  * @param[in] lat2 latitude of point 2 (degrees).
  * @param[in] lon2 longitude of point 2 (degrees).
  * @param[out] s12 distance between point 1 and point 2 (meters).
  * @param[out] azi1 azimuth at point 1 (degrees).
  * @param[out] azi2 (forward) azimuth at point 2 (degrees).
  * @param[out] m12 reduced length of geodesic (meters).
  * @param[out] M12 geodesic scale of point 2 relative to point 1
  *   (dimensionless).
  * @param[out] M21 geodesic scale of point 1 relative to point 2
  *   (dimensionless).
  * @param[out] S12 area under the geodesic (meters<sup>2</sup>).
  * @return \e a12 arc length of between point 1 and point 2 (degrees).
  *
  * \e lat1 and \e lat2 should be in the range [&minus;90&deg;, 90&deg;].
  * The values of \e azi1 and \e azi2 returned are in the range
  * [&minus;180&deg;, 180&deg;).
  *
  * If either point is at a pole, the azimuth is defined by keeping the
  * longitude fixed, writing \e lat = &plusmn;(90&deg; &minus; &epsilon;),
  * and taking the limit &epsilon; &rarr; 0+.
  *
  * The following functions are overloaded versions of GeodesicExact::Inverse
  * which omit some of the output parameters.  Note, however, that the arc
  * length is always computed and returned as the function value.
  **********************************************************************/
 Math::real Inverse(real lat1, real lon1, real lat2, real lon2,
                    real& s12, real& azi1, real& azi2, real& m12,
                    real& M12, real& M21, real& S12) const {
     return GenInverse(lat1, lon1, lat2, lon2,
                       DISTANCE | AZIMUTH |
                       REDUCEDLENGTH | GEODESICSCALE | AREA,
                       s12, azi1, azi2, m12, M12, M21, S12);
 }
Exemplo n.º 6
0
 /**
  * See the documentation for Geodesic30::Inverse.
  **********************************************************************/
 real Inverse(real lat1, real lon1, real lat2, real lon2,
                    real& s12, real& azi1, real& azi2)
   const {
   real t;
   return GenInverse(lat1, lon1, lat2, lon2,
                     DISTANCE | AZIMUTH,
                     s12, azi1, azi2, t, t, t, t);
 }