从旧+ n米计算新的经度,纬度

我想创build2个新的经度和2个新的纬度,以米为单位的坐标和距离,我想围绕某个点创build一个漂亮的边界框。 它的小规模,最大1500米+和1500米 – 。 所以这是一个城市的一部分,我不认为地球的曲线必须考虑在内。

所以我有50.0452345(x)和4.3242234(y),我想知道x + 500meter,x-500meter,y-500meter,y + 500meter

我发现了很多algorithm,但几乎所有的algorithm似乎都处理点之间的距离。

每度经度的公里数是大约

(2*pi/360) * r_earth * cos(theta) 

其中theta是以度为单位的纬度,而r_earth大约为r_earth

每个纬度的公里数在所有地点大致相同,

 (2*pi/360) * r_earth = 111 km / degree 

所以你可以这样做:

 new_latitude = latitude + (dy / r_earth) * (180 / pi); new_longitude = longitude + (dx / r_earth) * (180 / pi) / cos(latitude * pi/180); 

只要dxdy与地球半径相比较小,就不会太靠近极点。

接受的答案是完全正确的,工作。 我做了一些调整,并转化为这个:

 double meters = 50; double coef = meters * 0.0000089; double new_lat = my_lat + coef; double new_long = my_long + coef / Math.cos(my_lat * 0.018); 

希望这也有帮助。

您是否已经签出: 如何查找给定经纬度以北x公里的纬度/经度 ?

这些计算充其量是令人讨厌的,我做了很多。 haversine惯例将是您的朋友。

一些参考: http : //www.movable-type.co.uk/scripts/latlong.html