【高德地图API】绘制大地线 Geodesic/Great Circles

大地线(geodesic)是指地球椭球面上连接两点的最短程曲线。

大地线上每点的密切面(无限接近的3个点所构成的平面)都包含此点的曲面法线。因曲面法线互不相交,故为一条空间曲面曲线。在球面上,大圆弧(球面上的法截线)是对应的大地线。但在地球椭球面上,除两点均位于大地子午线或纬线上外,大地线均位于它两个端点的正反法截线之间。在椭球体面上进行测量计算时,应以两点间的大地线为依据,而在地面测得的方向和距离等,应归算成相应于椭球面上的方向和距离等。—百度百科

绘制大地线,通过贝塞尔曲线(Bessel)计算得出的经纬度,然后使用Polyline绘制。

具体算法,请参考Great Circles!,访问可能需要搭梯子。在此贴出原文代码段。

image

此代码段并非完全适用于高德地图API,仅供参考

   另:

      计算两坐标点距离,请参照:Calculate distance between two points on a globe 提供了使用各种语言的计算方法,C#、Java、Ruby、Python等等。

原文地址:https://www.cnblogs.com/shiyix/p/3459155.html