Détermination de la distance entre les points dans Google Maps V3
Le calcul de la distance entre deux marqueurs dans Google Maps V3 nécessite une approche mise à jour par rapport à l'approche ' Fonction distanceFrom' utilisée dans la V2.
Calcul personnalisé à l'aide de Haversine Formule
Si un calcul personnalisé est préféré, la formule Haversine peut être utilisée :
var rad = function(x) { return x * Math.PI / 180; }; var getDistance = function(p1, p2) { var R = 6378137; // Earth's mean radius in meters var dLat = rad(p2.lat() - p1.lat()); var dLong = rad(p2.lng() - p1.lng()); var a = Math.sin(dLat / 2) * Math.sin(dLat / 2) + Math.cos(rad(p1.lat())) * Math.cos(rad(p2.lat())) * Math.sin(dLong / 2) * Math.sin(dLong / 2); var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a)); var d = R * c; return d; // returns distance in meters };
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!