Comment puis-je mesurer la distance et de créer une zone de délimitation fondée sur deux latitude+longitude des points en Java?
Je suis désireux de trouver la distance entre deux points différents. Je sais cela peut être accompli avec la distance orthodromique.
http://www.meridianworlddata.com/Distance-calculation.asp
Une fois fait, avec un point de distance et je voudrais trouver le point de distance au nord, et que la distance à l'est dans le but de créer une zone autour du point.
- reportez-vous à ce blog xebee.xebia.dans/2010/10/28/de travail-avec-des géolocalisations
Vous devez vous connecter pour publier un commentaire.
Nous avons eu un certain succès à l'aide de OpenMap le tracé d'un lot de données de position. Il y a un LatLonPoint classe qui dispose de quelques fonctionnalités de base, y compris à distance.
Ici est une implémentation Java de Haversine formule. - Je l'utiliser dans un projet de calculer la distance en km entre lat/long.
Ou vous pouvez utiliser SimpleLatLng. Apache 2.0 homologués et utilisés dans un système de production que je connais: la mienne.
Histoire courte:
J'étais à la recherche d'un simple geo et ne pouvait pas en trouver un pour s'adapter à mes besoins. Et qui a envie d'écrire et de tester et de déboguer ces petits geo outils encore et encore dans toutes les applications? Il doit y avoir une meilleure façon!
Donc SimpleLatLng est né comme un moyen de stocker de latitude-longitude de données, faire des calculs de distance, et de créer en forme de limites.
Je sais que je suis deux années trop tard pour aider l'affiche originale, mais mon but est d'aider les gens comme moi qui trouve cette question dans un moteur de recherche. J'aimerais avoir certaines personnes l'utilisent et contribuent à l'essai et la vision de ce petit utilitaire léger.
Pour une plus précise de la distance (0,5 mm), vous pouvez également utiliser le Vincenty approximation:
Ce code a été librement adapté de http://www.movable-type.co.uk/scripts/latlong-vincenty.html
Corrigé Haversine formule de la Distance....
http://www.movable-type.co.uk/scripts/latlong.html
Vous pouvez utiliser le Java Géodésie Bibliothèque pour le GPS, il utilise le Vincenty les formules de qui prend en compte les terres de courbure de la surface.
Mise en œuvre va comme ceci:
La distance parcourue est en mètres.
Je sais qu'il y a beaucoup de réponses, mais en faisant quelques recherches sur ce sujet, j'ai découvert que la plupart des réponses ici utiliser le Haversine formule, mais les Vincenty formule est en fait plus précis. Il y a un post qui a adapté le calcul à partir d'une version Javascript, mais c'est très lourd. J'ai trouvé une version qui est supérieur parce qu':
VincentyDistanceCalculator
Cette méthode serait de vous aider à trouver la distance entre la localisation géographique de km.
Je l'utilise généralement MATLAB avec la Boîte À Outils De Cartographie, puis utiliser le code dans mon Java à l'aide de MATLAB Générateur de JA. Il me rend la vie beaucoup plus simple. Étant donné que la plupart des écoles ont gratuitement accès aux études, vous pouvez l'essayer (ou obtenir la version d'essai d'obtenir plus de votre travail).
Pour Android, il est une approche simple.
;
https://developer.android.com/reference/android/location/Location#distanceBetween(lat1,lng1,lat2,lng2,output%5B%5D)