Calculs simples pour travailler avec lat / lon + km distance?

Y a-t-il un calcul simple que je peux faire pour convertir les km en une valeur que je peux append à un flotteur lat ou lon pour calculer un cadre de sélection pour les recherches? Il n’a pas besoin d’être complètement précis.

Par exemple: si on me donnait un lat / lon pour Londres, Angleterre (51.5001524, -0.1262362) et que je voulais calculer ce que serait le lat à 25 km est / ouest et ce que le lon serait à 25 km au nord / sud de point, que devrais-je faire pour convertir les 25 km en décimales afin d’append aux valeurs ci-dessus?

Je cherche une règle générale, à savoir: 1km == +/- 0.XXX

Modifier:

Ma recherche initiale de “lat lon” n’a pas renvoyé ce résultat:

Comment calculer la boîte englobante pour un emplacement donné de lat / lng?

La réponse acceptée semble adaptée à mes besoins.

Les conversions approximatives sont les suivantes:

  • Latitude: 1 deg = 110.574 km
  • Longitude: 1 deg = 111,320 * cos (latitude) km

Cela ne corrige pas complètement l’aplatissement polaire de la Terre – pour cela, vous voudrez probablement une formule plus compliquée utilisant l’ellipsoïde de référence WGS84 (le modèle utilisé pour le GPS). Mais l’erreur est probablement négligeable pour vos objectives.

Source: http://en.wikipedia.org/wiki/Latitude

Attention : sachez que les coordonnées latlong sont exprimées en degrés, alors que la fonction cos dans la plupart des langues (toutes les?) Accepte généralement les radians. Par conséquent, une conversion de degré en radians est nécessaire.

Si vous utilisez Java, Javascript ou PHP, il existe une bibliothèque qui effectuera ces calculs avec précision, en utilisant une sortinggonomésortinge amusante (mais toujours rapide):

http://www.jstott.me.uk/jcoord/

http://www.jstott.me.uk/jcoord/ – utiliser cette bibliothèque

  LatLng lld1 = new LatLng(40.718119, -73.995667); LatLng lld2 = new LatLng(51.499981, -0.125313); Double distance = lld1.distance(lld2); Log.d(TAG, "Distance in kilometers " + distance); 

Intéressant que je n’ai pas vu de mention des coordonnées UTM.

https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system .

Au moins si vous voulez append des km à la même zone, cela devrait être simple (en Python: https://pypi.org/project/utm/ )

utm.from_latlon et utm.to_latlon.