suite de deux lignes calculer la latitude et lngDistance entre deux geopints
double geoLat = location.getLatitude(); // 37.422006
double geoLng = location.getLongitude(); // -122.084095
Dans une boucle i calculer la matrice de distance entre les points géographiques. latitude [i] et la longitude [i] se présente comme réponse JSON de google map api
distance[i]=GetLatAndLng.gps2m(geoLat, geoLng,latitude[i] ,longitude[i]);
Cette méthode est gps2m.
public static double gps2m(double lat1, double lng1, double lat2, double lng2) {
double l1 = Math.toRadians(lat1);
double l2 = Math.toRadians(lat2);
double g1 = Math.toRadians(lng1);
double g2 = Math.toRadians(lng2);
double dist = Math.acos(Math.sin(l1) * Math.sin(l2) + Math.cos(l1) * Math.cos(l2) * Math.cos(g1 - g2));
if(dist < 0) {
dist = dist + Math.PI;
}
return Math.round(dist * 6378100);//in meters
}
}
Dans le tableau à distance i m obtenir la valeur comme 1.1967617E7 Je veux distance en mètres
ce qui va mal et comment obtenir la distance en mètres.
Aide !!
Quel est le problème avec 1.1967617E7 en tant que valeur pour le nombre de mètres? – AbdullahC
il est trop grand .. même j'utilise la méthode distanceBetween et ai même résultat. –