朋友们, 我正在研究一些东西来找出两个经纬度点之间的距离。你知道吗
下面是我的python代码,以公里为单位计算距离
from math import radians, cos, sin, asin, sqrt
def distance(lat1, lng1, lat2, lng2):
R = 6371 # radius of the earth in km
lng1, lat1, lng2, lat2 = map(radians, [lng1, lat1, lng2, lat2])
x = (lng2 - lng1) * cos( 0.5*(lat2+lat1) )
y = lat2 - lat1
d = R * sqrt( x*x + y*y )
return d
distance(25.42684996,81.84835984,25.45328992,81.86906992)
**Out[77]: 3.6011256577543027**
答案是3.60。。公里。但当我在谷歌地图上交叉核对时,发现是609公里。有人能指出这里的错误是什么吗?你知道吗
我也提到了HERE和其他链接
如果你有“R”码,那绝对没问题!!!你知道吗
还有,有没有什么方法可以用python找出google建议的最短路径?你知道吗
试试这个:
这将返回球体上点之间的角度距离。要获得长度(公里)的距离,将结果与地球半径相乘。你知道吗
相关问题 更多 >
编程相关推荐