Maison >développement back-end >Tutoriel Python >Comment calculer la distance et le relèvement entre deux points GPS à l'aide de la formule Haversine de Python ?
Comment calculer le relèvement et la distance entre deux points GPS à l'aide de la formule Haversine en Python
La formule Haversine est une équation mathématique utilisée pour calculer le distance orthodromique entre deux points d'une sphère. Dans le contexte du GPS, cette formule peut être utilisée pour déterminer à la fois la distance et le relèvement entre deux coordonnées GPS.
Étape 1 : Définir la fonction
from math import radians, cos, sin, asin, sqrt def haversine(lon1, lat1, lon2, lat2): """ Calculate the great circle distance in kilometers between two points on the earth (specified in decimal degrees) """ # convert decimal degrees to radians lon1, lat1, lon2, lat2 = map(radians, [lon1, lat1, lon2, lat2]) # haversine formula dlon = lon2 - lon1 dlat = lat2 - lat1 a = sin(dlat/2)**2 + cos(lat1) * cos(lat2) * sin(dlon/2)**2 c = 2 * asin(sqrt(a)) r = 6371 # Radius of earth in kilometers. Use 3956 for miles. Determines return value units. return c * r
Étape 2 : Calcul
start_lon, start_lat = -1.7297222222222221, 53.32055555555556 bearing, distance = 96.02166666666666, 2 end_lon, end_lat = -1.6997222222222223, 53.31861111111111 distance_calculated = haversine(start_lon, start_lat, end_lon, end_lat) print("Distance:", distance_calculated)
Sortie :
Distance: 2.0000054199729084
Dans cet exemple, la distance calculée correspond à la valeur attendue de 2 kilomètres.
Remarque :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!