web-dev-qa-db-fra.com

Ordre préféré d'écriture des tuples de latitude et de longitude

Lorsque vous traitez avec un code source SIG, vous devez souvent écrire des nuplets de coordonnées de latitude et de longitude.

Par exemple. dans les liens Google Maps (123, 456):

http://maps.google.com/maps/ms?msid=214518704716144912556.00046d7689a99e95b721c&msa=0&ll=123,456&spn=0.007996,0.026865

Quel est l'ordre préféré (et pourquoi?)

  • latitude Longitude

  • longitude latitude

J'ai vu les deux être utilisés dans divers systèmes et j'espère trouver des preuves pour rester compatibles avec les autres.

125
Mikko Ohtamaa

EPSG: 4326 indique spécifiquement que l'ordre des coordonnées doit être latitude, longitude. De nombreux logiciels utilisent encore la longitude et la latitude. Cette situation a causé des ravages inimaginables sur les délais des projets et la santé mentale des programmeurs.

Le meilleur guidage que l'on puisse offrir est de connaître parfaitement l'ordre d'axe attendu de chaque composant de votre pile logicielle. PostGIS s'attend à des délais WFS 1.0 utilise lng/lat, mais WFS 1.3.0 diffère de la norme et utilise lat/lng. Par défaut, GeoTools est défini sur lat/lng mais peut être remplacé par une propriété système.

La documentation de GeoTools sur l'historique et l'explication du problème mérite une lecture: http://docs.geotools.org/latest/userguide/library/referencing/order.html

187
Shane

L'ordre préféré est par convention latitude, longitude. Ceci a probablement été normalisé par le Organisation maritime internationale comme indiqué ici . Google utilise également cet ordre dans ses Maps et Earth . Je me souviens de cet ordre en pensant à l'ordre alphabétique de latitude, longitude.

27
Jiri Kriz

Le bon ordre est la longitude, la latitude, dans pratiquement toutes les applications SIG professionnelles, comme en mathématiques conventionnelles (c.-à-d., f(x ,y, z)). Le standard GeoJSON est assez typique et succinct:

The order of elements must follow x, y, z order
(easting, northing, altitude for coordinates in a 
projected coordinate reference system, or longitude,
latitude, altitude for coordinates in a geographic
coordinate reference system).

Il en va de même pour les principales normes Open Geospatial Consortium (WKT et WKB, ainsi que pour des extensions telles que EWKB). De même, Google peut afficher l'ordre dans Lat/Lon afin de le familiariser avec les utilisateurs qui ont grandi avec cette coutume (à partir de normes de navigation telles que IMO, plutôt que informatiques). Mais la norme KML elle-même est comme presque tous les autres systèmes SIG:

The KML encoding of every kml:Location and coordinate
Tuple uses geodetic longitude, geodetic latitude, and
altitude (in that order).

Bonne règle de base: si vous savez ce qu'est un tuple et que vous programmez, vous devriez utiliser lon, lat. Je dirais même que cela s'applique si votre utilisateur final (par exemple un pilote ou un capitaine de navire) préférera afficher le résultat dans lat, lon. Vous pouvez changer l'ordre dans votre interface utilisateur si nécessaire, mais l'écrasante majorité de vos données (fichiers de formes, fichiers géo, etc.) seront dans l'ordre cartésien normal.

23
unmounted

Par convention dans la "vie réelle", lorsqu’on donne une position, la latitude (c'est-à-dire Nord/Sud) est toujours donnée 1ère, par ex. 20 ° N 56 ° W (bien que cela ne suive pas la convention habituelle si on pense à une grille cartésienne standard); De même, toutes les coordonnées sur Wikipedia suivent cette convention (par exemple, voir l'emplacement de Southampton: http://en.wikipedia.org/wiki/Southampton ). Pour éviter toute confusion, en particulier lorsque les unités ne sont pas incluses, je recommanderais toujours que la latitude soit donnée en premier dans un tuple.

9
ChrisW

Personnellement, je n'ai jamais rien vu d'autre que la latitude, suivie de la longitude.

Et, lorsque vous utilisez + et - au lieu de N et S, il a toujours été + est N et - est S.

J'ai observé des variations lors de l'utilisation de + et - pour E et W. Généralement + a été E et - a été W. Cependant, sur les anciennes applications où ils traitaient excessivement avec les longitudes W, j'ai vu + être W et - être E .

J'espère que vous n'aurez pas à traiter des applications aussi anciennes.

9
Terry

Donc, l'ordre préféré dépend de la préférence personnelle!

La latitude est venue en premier; l'équinoxe est connue depuis des millénaires, à l'époque où le "Soleil traverse l'équateur"; en mars, traversée du sud au nord et septembre du nord au sud. La seule question à poser était de savoir si l’équateur aurait dû être à 0 ou 90 degrés. En prenant 0 degré, l'angle entre le zénith solaire vertical et le zénith solaire de l'équateur correspond à la latitude d'un lieu, partout sur la planète. La première latitude ou premier parallèle s'est effectivement définie.

Longitude ne pourrait être que par accord. La Grande-Bretagne a mis en place un prix Longitude. La Grande-Bretagne avait besoin de ses navires pour savoir où ils se trouvaient et avait besoin de meilleures cartes. Harrison ( http://www.youtube.com/watch?v=T-g27KS0yiY ) a créé un chronomètre de marine précis; ils ont envoyé des voyages de cartographe, par exemple James Cook vers 1770. La Grande-Bretagne a donc revendiqué le premier méridien en utilisant Greenwich en tant que 000deg pour ses cartes. Après 100 ans d'utilisation, le premier méridien a été accepté à l'échelle internationale, en 1884.

À l'époque de Christophe Colomb, Latitude était le seul numéro qu'ils avaient. La stratégie consistait à traverser un parallèle avant de tourner à gauche ou à droite pour arriver à destination; guetter des nuages ​​ou des oiseaux. Mesurer la vitesse en nœuds toutes les heures était courant mais ne tenait pas compte des courants. Peut-être que la plus grande réussite de Columbus a été de revenir quatre fois des Antilles. Sans cela, les terres découvertes ne pourraient pas être ajoutées aux cartes.

Lire "Longitude" de Dava Sobel (ISBN: 9780007214228)

5
Graham

Outre la spécification GeoJSON, déjà mentionnée par d’autres, il existe d’autres cas pratiques où la longitude, l’ordre du latitide est recommandé, voire obligatoire - par exemple: index géospatial dans MongoDB . Si vous vous trompez dans cet ordre, vos requêtes renverront des résultats erronés, comme s'il s'agissait d'un nouvel ensemble de données transposé.

5

La norme ISO 6709 normalise l'inscription de l'ordre sous forme de latitude et de longitude pour des raisons de sécurité. L'explication de Graham ci-dessus me semble correcte également. Quelqu'un a suggéré que cette réponse n’était pas liée à la question - c’est absolument, et explique pourquoi cet ordre est souvent donné sous forme de latitude, longitude.

Voici comment il est répertorié, peu importe la durée d'utilisation du système par les navigateurs; changer cela maintenant serait déroutant et, comme le suggère l'ISO, potentiellement dangereux. Les logiciels SIG, comme ArcMap, les listent en sens inverse car il s'agit de la convention typique des paires de coordonnées x, y. La latitude est y, la longitude est x, c'est pourquoi Arc les répertorie.

4
vce500

Longitude puis Latitude (lon, lat).

Lorsqu'elle est projetée sur Mercator, la longitude définit la direction x et la latitude définit la direction y. La plupart des bibliothèques de géométrie utilisent strictement ce format (lon, lat) car il s'agit du moyen le plus intuitif de penser les coordonnées géographiques dans un plan 2D.

1
David