根据经纬度计算距离的python代码
从某程序中copy出来的,如有侵权请联系我。
import math
from math import sin,cos
from shapely.geometry import Point,LinearRing
EARTH_REDIUS = 6378.137
pi=3.1415926
def rad(d):
return d * pi / 180.0
def getDistance(point1,point2):
lat1=point1.y
lng1=point1.x
lat2=point2.y
lng2=point2.x
radLat1 = rad(lat1)
radLat2 = rad(lat2)
a = radLat1 - radLat2
b = rad(lng1) - rad(lng2)
s = 2 * math.asin(math.sqrt(math.pow(sin(a/2), 2) + cos(radLat1) * cos(radLat2) * math.pow(sin(b/2), 2)))
s = s * EARTH_REDIUS
return s