不采用geodesic库如何实现给出具体代码
实现什么功能呢?如果是计算两点之间的距离,可以使用以下代码:
import math
def calculate_distance(lat1, lng1, lat2, lng2):
# 将经纬度转换为弧度
rad_lat1 = math.radians(lat1)
rad_lng1 = math.radians(lng1)
rad_lat2 = math.radians(lat2)
rad_lng2 = math.radians(lng2)
# 计算经纬度的差值
diff_rad_lng = rad_lng2 - rad_lng1
diff_rad_lat = rad_lat2 - rad_lat1
# 使用Haversine公式计算球面距离
a = math.sin(diff_rad_lat/2)**2 + math.cos(rad_lat1)*math.cos(rad_lat2)*math.sin(diff_rad_lng/2)**2
c = 2 * math.atan2(math.sqrt(a), math.sqrt(1-a))
r = 6371 # 地球半径,单位为km
distance = r * c
return distance
其中,lat1和lng1表示第一个点的纬度和经度,lat2和lng2表示第二个点的纬度和经度,distance表示两点之间的距离(单位为km)
原文地址: https://www.cveoy.top/t/topic/eoD8 著作权归作者所有。请勿转载和采集!