-2
我想包括谷歌地圖在我的項目來計算當前位置和目的地之間的距離。我的項目是基於python django的項目來提供距離映射。谷歌地圖跟蹤位置和計算距離使用python django
我想包括谷歌地圖在我的項目來計算當前位置和目的地之間的距離。我的項目是基於python django的項目來提供距離映射。谷歌地圖跟蹤位置和計算距離使用python django
您可以使用下面的方法計算兩個位置之間的距離。
from math import sin, cos, sqrt, atan2, radians
def distance_between_zipcodes(lat1, lat2, lng1, lng2):
R = 6373.0
lat1 = radians(lat1)
lon1 = radians(lng1)
lat2 = radians(lat2)
lon2 = radians(lng2)
dlon = lon2 - lon1
dlat = lat2 - lat1
a = (sin(dlat/2))**2 + cos(lat1) * cos(lat2) * (sin(dlon/2))**2
c = 2 * atan2(sqrt(a), sqrt(1-a))
distance = R * c
# km to miles
distance /= 1.609344
return distance
LAT1當前位置的 =緯度
lon1 =當前位置的經度
LAT2的目的地位置
lon3 =目的地的經度 =緯度位置
[R地球
的=半徑安裝geopy:
pip install geopy
要計算緯度和經度:
from geopy.geocoders import GoogleV3
def get_lat_lng(zip_code):
geocoder = GoogleV3()
location = geocoder.geocode(query=str(zip_code))
if location:
address, lat, lng = location.address, location.latitude, location.longitude
return address, lat, lng
我建議找了GeoDjango內置 – e4c5