Bonjour,
Je travail actuellement sur le calcul de distance entre plusieurs points sur une carte google. Pour le moment je fait comme ceci :
Je fournis donc les coordonnées et il me retourne une distance en mètre. Seulement je crois qu'il fait du vol d'oiseau en traçant une ligne droite.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 function distance(lat1,lon1,lat2,lon2) { var R = 6371; var dLat = (lat2-lat1) * Math.PI / 180; var dLon = (lon2-lon1) * Math.PI / 180; var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(lat1 * Math.PI / 180 ) * Math.cos(lat2 * Math.PI / 180 ) * Math.sin(dLon/2) * Math.sin(dLon/2); var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); var d = R * c; if (d>1) return Math.round(d*1000); return d; }
Ma question est la suivante :
- Est-ce que dans l'api google maps il est possible de récupérer seulement la distance entre deux point avec le calcul d'itinéraire ?
Avez-vous déjà tenté ceci ? Je dois afficher le trajet le plus court entre un point dé référence et différents autres lieux.
Merci d'avance de vos réponses. Bonne journée
Partager