Provided by: libproj-dev_4.9.2-2_amd64 bug


       geod_init - initialize an ellipsoid
       geod_lineinit - initialize a geodesic line
       geod_position - a position on a geodesic line
       geod_direct - the direct geodesic problem
       geod_inverse - the inverse geodesic problem
       geod_polygonarea - the area of a polygon


       #include <geodesic.h>
       and link against the proj library.


       This  library  is  a  port  of the geodesic routines in the C++
       library, GeographicLib, to C.  It solves the direct and inverse
       geodesic  problems on an ellipsoid of revolution.  In addition,
       the reduced length  of  a  geodesic  and  the  area  between  a
       geodesic  and  the  equator  can  be computed.  The results are
       accurate  to  round  off  for  |f|  <  1/50,  where  f  is  the
       flattening.   Note  that  the  geodesic routines measure angles
       (latitudes, longitudes, and azimuths) in  degrees,  unlike  the
       rest   of   the   proj   library,   which  uses  radians.   The
       documentation for this library is included  in  geodesic.h.   A
       formatted   version   of  the  documentation  is  available  at


       The following program reads in lines with the  coordinates  for
       two  points  in  decimal  degrees  (lat1, lon1, lat2, lon2) and
       prints out azi1, azi2, s12 for the geodesic line  between  each
       pair  of  points  on  the  WGS84  ellipsoid.  (N.B. azi2 is the
       forward azimuth at point 2.)

       #include <stdio.h>
       #include <geodesic.h>

       int main() {
         double a = 6378137, f = 1/298.257223563; /* WGS84 */
         double lat1, lon1, azi1, lat2, lon2, azi2, s12;
         struct geod_geodesic g;

         geod_init(&g, a, f);
         while (scanf("%lf %lf %lf %lf\n",
                      &lat1, &lon1, &lat2, &lon2) == 4) {
           geod_inverse(&g, lat1, lon1, lat2, lon2,
                        &s12, &azi1, &azi2);
           printf("%.8f %.8f %.3f\n", azi1, azi2, s12);
         return 0;


       libproj.a - library of projections and support procedures


       Full online documentation for geodesic(3),



       The GeodesicExact class in GeographicLib  solves  the  geodesic
       problems  in  terms  of  elliptic  integrals;  the  results are
       accurate for arbitrary f.

       C. F. F. Karney, Algorithms for Geodesics,
       J. Geodesy 87, 43-55 (2013);

       The online geodesic bibliography,


                                      2014/12/17 Rel. 4.9.0                           GEODESIC(3)