CBS hizmetlerinde tercih edilen enlem ve boylam tupleri yazma sırası


144

GIS kaynak koduyla uğraşırken, genellikle enlem ve boylam koordinat gruplarını yazmanız gerekir.

Örneğin, Google Haritalar bağlantılarında (123, 456):

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

Hangisi tercih edilir (ve neden?)

  • enlem boylam

  • boylam enlem

Her ikisinin de çeşitli sistemlerde kullanıldığını gördüm ve umarım diğer sistemlere bağlı kalmak için bazı kanıtlar bulmayı umuyorum.

Standart bir uygulama var mı? Varsa nedir / nedir?


2
tercih edilen sipariş yerine, vakaların bir derlemesini kontrol edebilirsiniz: macwright.org/lonlat
golimar

3
It adlı latitude, longitudeemri
onmyway133

1
Bu soruyu kapatmak için oy kullanıyorum çünkü bu programlama değil coğrafya ile ilgili. Aynı zamanda görüşe dayalı bir sorudur.
TylerH

1
@MikkoOhtamaa Fark, sorunuzun belirli bir teknik şartname için gerekli siparişin ne olduğunu sormamasıdır (muhtemelen site dışı dokümantasyon bilgileri için bir istek kadar konu dışı olacaktır), daha ziyade 'tercih edilen' yöntem [ genel olarak ]. Tercih ettiğiniz değişiklikler, sorduğunuz kişiye ve kullanım amacına / içeriğine göre değişir. Buradaki yanıtların gösterdiği gibi, her iki sıralamanın da önemli bir takibi vardır. Daha sonra, programlama ilişkisi konusu hala tamamen ele alınmamıştır.
TylerH

1
@MikkoOhtamaa Stack Overflow ile ilgili CBS soruları ile ilgili bir sorunum yok. Bu bir CBS sorusu değildir; "enlem / boylam nasıl sipariş etmeliyim?" sorusu ... istediğin belirli bir CBS uygulaması bile yok. Bu soru hala fikir tabanlıdır ("tercih edilen yöntemler" isteyen herhangi bir soru fikir tabanlıdır), çok geniştir (hangi bağlam, senaryo veya uygulama hakkında soru soruyorsunuz? Yanıtların gösterdiği gibi, bu ölçütlere göre farklıdır), programlama hakkında değil (enlem ve boylam programlama terimleri değil, coğrafya terimleri).
TylerH

Yanıtlar:


210

EPSG: 4326 özellikle koordinat sırasının enlem ve boylam olması gerektiğini belirtir. Birçok yazılım paketi hala boylam, enlem sırası kullanır. Bu durum, proje son tarihlerine ve programcı akıl sağlığına hayal edilemez bir tahribat yarattı.

Birinin sunabileceği en iyi rehberlik, yazılım yığındaki her bir bileşenin beklenen eksen sırasının tam olarak farkında olmaktır. PostGIS lng / lat bekliyor. WFS 1.0 lng / lat kullanır, ancak WFS 1.3.0 standardı değiştirir ve lat / lng kullanır. GeoTools varsayılan olarak lat / lng'dir, ancak bir system özelliğiyle geçersiz kılınabilir.

Sorunun geçmişi ve açıklaması hakkındaki GeoTools belgeleri okunmaya değer: http://docs.geotools.org/latest/userguide/library/referencing/order.html


6
Neden bu kadar iyi olduğunu bildiren SO.com'da nadiren cevap olarak görüyorum . Beats, "MongoDB tarafından kullanıldığı için" diye cevaplar.
Mikko Ohtamaa

1
Bağlantınız sizinle aynı fikirde değil; EPSG veritabanında 4326, (enlem, boylam) eksen sırasına sahip bir coğrafi CRS ile eşleşir. Bununla birlikte, alandaki çoğu yazılım EPSG: 4326'yı (boylam, enlem) eksen sırasına sahip bir coğrafi CRS olarak anlamaktadır, çünkü eski OGC spesifikasyonları bu şekilde tasarlanmıştır.
Aaron McIver

7
Cevabımdan ilk iki cümle: EPSG: 4326 özellikle koordinat sırasının enlem ve boylam olması gerektiğini belirtir. Birçok yazılım paketi hala boylam, enlem sırası kullanır. Tam olarak aynı değil mi?
Shane

5
Başkasının Google Haritalar ile ilgili sorunları varsa ve dosyaya bir KML dosyası sağlıyorsa, sipariş Boylam / Enlem !! KML dosyası için hiçbir belge bunu söylemiyor !!
Turnerj

2
"KML dosyası için hiçbir belge bunu söylemiyor" yanlış. developers.google.com/kml/documentation/kmlreference#point "Boylam, enlem ve yükseklik için kayan nokta değerlerinden (bu sırayla) oluşan tek bir demet."
tmcw


23

Doğru düzen, geleneksel matematikte olduğu gibi neredeyse tüm profesyonel CBS uygulamalarında boylam, enlemdir (yani f(x ,y, z)). GeoJSON standardı oldukça tipik ve özlüdür:

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).

Aynı şey birincil Açık Coğrafi Konsorsiyum standartları (WKT ve WKB ve EWKB gibi uzantılar) için de geçerlidir. Benzer şekilde, Google, bu gelenekle büyüyen kullanıcılara daha fazla tanıdık gelmesi için Lat / Lon'da sipariş verebilir (yani, hesaplamalı olanlardan ziyade IMO gibi navigasyon standartlarından.) Ancak KML standardının kendisi neredeyse diğer tüm CBS sistemleri gibidir:

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

Önemli bir kural: Bir tuple ne olduğunu ve programlama ise, kullandığınız olmalı lon, lat. Ben bile son kullanıcı çıktı görüntülemeyi tercih edecektir (pilot veya gemi kaptanı söylemek) bu geçerlidir söyleyebilirim lat, lon. Gerekirse, kullanıcı arayüzünüzdeki siparişi değiştirebilirsiniz, ancak verilerinizin ezici çoğunluğu (şekil dosyaları, geojson vb.) Normal Kartezyen düzende olacaktır.


4
Burada bazı anlaşmazlıklar görüyorum: Ben seçmek için iki seçenek - çok fazla!
Mikko Ohtamaa

6
Okuyucular, ISO 6709'un herhangi bir kullanıcı arayüzünde her zaman [lat, lon] formatını kullanmanız gerektiğini açıkça belirttiğini ve bunun yalnızca kişisel tercih meselesi olmadığını belirtmelidir.
Iain Collins

9

'Gerçek hayattaki' konvansiyona göre, bir pozisyon verirken, enlem (yani Kuzey / Güney) her zaman 1. verilir, örneğin 20 ° N 56 ° W (ancak standart bir Kartezyen hakkında düşünürseniz bu normal sözleşmeyi takip etmez) Kafes); benzer şekilde, Wikipedia'daki tüm koordinatlar bu sözleşmeyi takip eder (örneğin Southampton'ın bulunduğu yere bakın: http://en.wikipedia.org/wiki/Southampton ). Karışıklığı kurtarmak için, özellikle birimler dahil edilmediğinde, her zaman enlemin bir demet halinde 1. verilmesini tavsiye ederim.


9

Şahsen enlem ve ardından boylam dışında hiçbir şey görmedim.

Ve + ve - kullanırken N ve S yerine, her zaman + N'dir ve - S'dir.

E ve W için + ve - kullanırken farklılık gözlemledim. Genel olarak + E ve - W olmuştur. Ancak, W boylamları ile aşırı derecede uğraştıkları eski uygulamalarda, W ve - E olduğunu gördüm .

Umarım eski uygulamalarla uğraşmak zorunda kalmazsınız.


Dünya çapındaki uygulamalarla çalışırken kolayca gözlemlenebilir.
Daniel Antunes Pinto

Google haritalarına herhangi bir boylam ve enlem koordinat çiftini yazdığınızda, bunun tersi değil, (uzun, enlem) olarak yorumlandığını göreceksiniz. Bu çok yaygın olarak kullanılan bir sistem örneğidir.
cazort

2
@cazort Hangi nedenle olursa olsun, burada olmaz. Örneğin memleketim Eugene, Oregon yaklaşık N 44.1, K 123.1'de. Maps.google.com'da 44.1 -123.1 girersem, Eugene'e gider. -123.1 44 girersem bana bulamayacağını söyler. İlginç bir şekilde, 123.1 W 44 N girersem, bunu anlar ve Eugene'e gider, bu nedenle biraz esneklik vardır. Ayrıca reference.com/technology/… , enlem / boylamın tercih edilen sipariş olduğunu gösterir. Ayrıca, değerinde Google Earth enlem / boylam kullanır.
Terry

5

Diğerlerinin daha önce bahsettiği GeoJSON spesifikasyonları dışında, boylam, enlem sırasının önerildiği, hatta zorunlu olduğu başka pratik durumlar da vardır - örneğin: MongoDB'de jeo-uzamsal indeksleme . Siparişi orada yanlış alırsanız, sorgularınız yeniden aktarılmış bir veri kümesi gibi yanlış sonuçlar döndürür.


5

Yani tercih edilen sipariş kişisel tercihinize bağlıdır!

Enlem önce geldi; ekinoks, "güneş ekvatordan geçtiği günler" olarak milenyum için bilinmektedir; Mart ayında S'den N'ye ve Eylül'den N'den S'ye geçiş. Tek soru, Ekvator'un 0 mı yoksa 90 derece mi olması gerektiği olabilir. 0 derece alarak, ekinoks üzerindeki dikey ve gün ortası güneş zirvesi arasındaki açı, gezegenin her yerinde bir konumun enlemidir. Asal enlem veya asal paralel, kendisini etkili bir şekilde tanımladı.

Boylam ancak anlaşma ile olabilir. İngiltere bir Boylam ödülü verdi. İngiltere, nerede olduklarını bilmek için gemilerine ve daha iyi haritalara ihtiyaç duyuyordu. Harrison ( http://www.youtube.com/watch?v=T-g27KS0yiY ) doğru bir deniz kronometresi üretti; harita yapımı seyahat yolculukları gönderdiler, örneğin James Cook 1770'ler. Bu nedenle İngiltere, haritaları için 000 derece olarak Greenwich'i kullanarak Prime Meridian'ı talep etti. 100 yıl kullanımından sonra, 1884 yılında Başbakan Meridian uluslararası kabul gördü.

Christopher Columbus zamanında Latitude sahip oldukları tek sayıydı. Strateji, hedef için sola veya sağa dönmeden önce bir paralitten geçmekti; bulutlar veya kuşlar izliyor. Düğümlerde her saatte hız ölçümü yaygındı ancak akımları hesaba katmadı. Belki Columbus'un en büyük başarısı dört kez Batı Hint Adaları'ndan eve dönmekti. Bu olmadan keşfettiği arazi haritalara eklenemedi.

Dava Sobel tarafından "Boylam" yazısını okuyun (ISBN: 9780007214228)


1
Bence programlı ve teknik referansla (ama yanılmış olabilirim) anlamına geliyor. Tarih dersi ilginçti.
jww

1
Bu soru ile ilgili değil, ama kesinlikle ilginç. Teşekkürler :)
Mikko Ohtamaa

Ancak mantıklıdır, çünkü yalnızca harita koordinatları kullanılacaksa, söz konusu düzenin X, Y'de olduğu gibi boylam, enlem olacağını; karışıklık sadece her yerde enlem, boylam demenin yüzlerce yıllık önceliği nedeniyle vardır.
Antti Haapala

5

ISO 6709, güvenlik nedenleriyle siparişin enlem, boylam olarak listelenmesini standartlaştırır. Graham'ın yukarıdaki açıklaması benim için de doğru. Birisi bu cevabın soru ile ilgili olmadığını öne sürdü - kesinlikle öyle ve emrin neden genellikle enlem, boylam olarak verildiğini açıklıyor.

Ancak uzun gezginler sistemi kullanıyorlar; şimdi değiştirmek kafa karıştırıcı olurdu ve ISO'nun da önerdiği gibi, potansiyel olarak tehlikeli. ArcMap gibi CBS yazılımları da onları başka bir şekilde listeler, çünkü bu x, y koordinat çiftleri için tipik bir kuraldır. Enlem y, boylam x, bu yüzden Arc onları böyle listeler.


1

Boylam sonra Latitude (lon, lat).

Mercator'a yansıtıldığında boylam x yönünü, enlem ise y yönünü tanımlar. Çoğu geometri kitaplığı, 2B düzlemdeki coğrafi koordinatları düşünmenin en sezgisel yolu olduğu için bu formatı (lon, lat) kesinlikle kullanır.


3
Öyleyse, bu en sezgisel düşünme biçimiyse, Google Earth bloguna neden KML'de lon-lat kullanırken Lat-Long Blog deniyor ?
teta

1
Temel olarak, gezginler geleneksel olarak lat-lon siparişini kullandılar, bu nedenle bu siparişle uğraştıysanız, navigasyonlarınızı bozabilirsiniz. Google, geleneksel bir blog için ve 2D uçak siparişi veri yapısı için kullanıyor. @mkennedy aynı soruya verdiği cevapta bu soruya en iyi cevapları verir: gis.stackexchange.com/questions/6037/…
David
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.