如何在Google Maps API中按给定的边界和中心查找球体的半径

时间:2017-07-24 10:46:07

标签: google-maps geometry

假设我在Google地图上绘制了一个圆圈,并且我已经存储了由Circle.getBounds()及其中心给出的边界(东北角和西南角)。但我没有存储圆的半径。

现在我想恢复(在地图上再次绘制)我的圆圈,但我只有它的边界和中心,而Circle构造函数需要它的半径(documentation)。

有没有办法重新计算半径?

P.S。其中一个边界点与圆的中心之间的距离不适合此处,因为圆位于其边界内。

1 个答案:

答案 0 :(得分:0)

获得点[Lat_north_east, Lng_Center](顶部中间)和[Lat_Center, Lng_Center]之间的距离。这是经向弧,因此距离公式很简单:

R = 40 000 000 * Abs(Lat_north_east - Lat_Center) / 360 

40 000 km是地球子午线的全长 - 全圆,360度。

所以40 000 000 meters / 360 = 111.111 km是一度子午线弧的长度。