J'ai un problème de calcul de la distance entre deux géopoints.
Les géopoints sont les suivants: p> et l'autre p> puis je crée deux emplacements: p> et je calculille la distance: p> et je autour de celui-ci: p> mais j'ai des résultats comme: p> 1.4331783e7 p> Qu'est-ce que je fais mal? P> p>
3 Réponses :
essayez de suivre ma méthode,
Vous êtes défini la valeur géopoind dans l'objet Emplacement au lieu de double valeur Essayez de définir une double valeur de latitude et de longitude Maintenant, obtenez l'emplacement P> float distance = loc.distanceTo(loc2);
Je ne peux pas définir les deux valeurs comme des nombres purs, car le premier géopoint est produit en fonction du lieu de la carte des robinets d'utilisateur.
Tout ce que je viens de donner l'exemple en passant la valeur en double format, vous pouvez transmettre la valeur géopoing en les divisant à l'aide de la valeur 1E6 comme LOC.SetLatitude (position1.getLatitudee6 () / 1e6) et une autre chose est que vous n'avez pas réglé le Valeur Lat / LNG pour l'objet LOC2 Vous pouvez simplement modifier la valeur locale.
Vous prenez une mauvaise latitude et des longitudes, veuillez remplacer les lignes suivantes
Location loc = new Location(""); loc.setLatitude(position1.getLatitudeE6()/1E6); loc.setLongitude(position1.getLongitudeE6()/1E6); Location loc2 = new Location(""); loc.setLatitude(position2.getLatitudeE6()/1E6); loc.setLongitude(position2.getLongitudeE6()/1E6);
Consultez ce lien codecodex.com/wiki/...
Pourquoi vous pensez 1.4331783E7 B> est faux?
Parce que la distance devrait être en mètres et le point que je mets et que je tape est maximum de 100 mètres donc je pense que ce n'est pas le résultat dont j'ai besoin!