[OpenLayers-Trac] [OpenLayers] #3426: Accurate treatment of geodesics

OpenLayers trac-20090302 at openlayers.org
Thu Jul 21 17:19:59 EDT 2011


#3426: Accurate treatment of geodesics
-----------------------+----------------------------------------------------
 Reporter:  karney     |       Owner:              
     Type:  feature    |      Status:  new         
 Priority:  minor      |   Milestone:  2.12 Release
Component:  Util       |     Version:  2.10        
 Keywords:  Geodesics  |       State:              
-----------------------+----------------------------------------------------
 OpenLayers 2.10 provides distVincenty and destinationVincenty which
 compute geodesics using Vincenty's method.  However this method suffers
 from two problems:

 * the distance calculation fails to converge from some pairs of
 points;[[BR]]
 * where it converges the error is rather large (about 0.5mm).

 OpenLayers also provides a function getGeodesicArea which is inaptly
 named because

 * it treats only a sphere and not the ellipsoid;[[BR]]
 * the edges of the polygon are not geodesics (or great circles) but rather
 straight lines on a cylindrical equal-area projection;[[BR]]
 * the polygon cannot enclose a pole.

 The attached patch adds distGeodesic, destinationGeodesic, and
 getTrueGeodesicArea which correct the problems noted about.  These use
 the Javascript port of the geodesic functionality in GeographicLib.  For
 a sample of the capabilities, see

    http://geographiclib.sourceforge.net/scripts/geod-calc.html

 GeographicLib also provides facilities which may be useful to OpenLayers
 in the future (for instance it can simplify finding the intersection of
 geodesics).

 GeographicLib using the MIT/X11 license so you are free to incorporate
 it into OpenLayers.

-- 
Ticket URL: <http://trac.openlayers.org/ticket/3426>
OpenLayers <http://openlayers.org/>
A free AJAX map viewer


More information about the Trac mailing list