Qual è la lunghezza massima di latitudine e longitudine?


320

Quanto possono essere latitudine e longitudine?

Ricevo lunghezze molto lunghe inviate da un dispositivo Windows Phone:

Latitude=-63572375290155
Longitude=106744840359415

Questo supera la dimensione della colonna della mia tabella e sto riscontrando errori.


7
Sei sicuro che siano lat / long? Max / Min sono lat +90 a -90 lunghi da +180 a -180, direi che manca una virgola ... salvarla come float nel db sarebbe sufficiente, se formattata correttamente. Ma penso che qualcosa vada storto perché i tuoi valori non possono essere veri
Xavjer,

2
Stai utilizzando alcune API per ottenere questi valori. Presumibilmente, l'API viene fornita con la documentazione. Cosa dice la documentazione sulle unità?
NPE,

19
Ho il sospetto che i numeri siano in realtà -63.572375290155 e 106.744840359415, che si trova appena al largo della costa dell'Antartide. Una latitudine o longitudine con sette cifre decimali ha una precisione di 5 piedi. Qualsiasi più di 8 cifre decimali è rumore.
Gilbert Le Blanc,


1
Sto votando per chiudere questa domanda come fuori tema perché non riguarda lo sviluppo del software.
Jim G.

Risposte:


646

L'intervallo valido di latitudine in gradi è -90 e +90 rispettivamente per l'emisfero sud e nord. La longitudine è compresa tra -180 e +180 specificando le coordinate a ovest e ad est del meridiano primo, rispettivamente.

Per riferimento, l' equatore ha una latitudine di 0 °, il polo nord ha una latitudine di 90 ° nord (scritto 90 ° N o + 90 °) e il polo sud ha una latitudine di -90 °.

Il Prime Meridian ha una longitudine di 0 ° che attraversa Greenwich, in Inghilterra. La International Date Line (IDL) segue approssimativamente la longitudine di 180 °. Una longitudine con un valore positivo cade nell'emisfero orientale e un valore negativo cade nell'emisfero occidentale.

Precisione in gradi decimali

Sei (6) decimali posizionano la precisione nelle coordinate usando i gradi decimali con una risoluzione di 10 cm (o 0,1 metri). Ogni differenza di 0,000001 nel grado decimale delle coordinate è di circa 10 cm di lunghezza. Ad esempio, le immagini di Google Earth e Google Maps hanno in genere una risoluzione di 1 metro e alcuni luoghi hanno una risoluzione maggiore di 1 pollice per pixel. La risoluzione di un metro può essere rappresentata usando 5 cifre decimali, quindi più di 6 cifre decimali sono estranee per quella risoluzione. La distanza tra le longitudini all'equatore è uguale alla latitudine, ma la distanza tra le longitudini raggiunge lo zero ai poli quando le linee del meridiano convergono in quel punto.

Se il valore di Latitudine è riportato come -6.3572375290155 o -63.572375290155, è possibile arrotondare e memorizzare fino a 6 cifre decimali per una precisione di 10 cm (o 0,1 metri).

Per una precisione millimetrica (mm), quindi rappresentare lat / lon con 8 cifre decimali in formato gradi decimali. Poiché la maggior parte delle applicazioni non richiede quel livello di precisione, 6 decimali sono sufficienti per la maggior parte dei casi.

Nella direzione opposta, interi gradi decimali rappresentano una distanza di ~ 111 km (o 60 miglia nautiche) e una differenza di 0,1 decimali rappresenta una distanza di ~ 11 km.

Ecco una tabella con # decimali di differenza di latitudine con i gradi delta e la distanza stimata in metri usando 0,0 come punto di partenza.

decimal  decimal     distance
places   degrees    (in meters)
-------  ---------  -----------
  1      0.1000000  11,057.43      11 km
  2      0.0100000   1,105.74       1 km
  3      0.0010000     110.57
  4      0.0001000      11.06
  5      0.0000100       1.11
  6      0.0000010       0.11      11 cm
  7      0.0000001       0.01       1 cm

Rappresentazione in gradi-minuto-secondo (DMS)

Per la notazione DMS 1 secondo d'arco = 1/60/60 gradi = ~ 30 metri di lunghezza e 0,1 secondi d'arco delta è ~ 3 metri.

Esempio:

  • 0 ° 0 '0 "O, 0 ° 0' 0" N -> 0 ° 0 '0 "O, 0 ° 0' 1" N => 30.715 metri
  • 0 ° 0 '0 "O, 0 ° 0' 0" N -> 0 ° 0 '0 "O, 0 ° 0' 0.1" N => 3.0715 metri

1 minuto d'arco = 1/60 gradi = ~ 2000m (2km)

AGGIORNAMENTO: ecco un divertente post sul blog sulla precisione delle coordinate.


2
Che dire della longitudine? Quanta precisione del decimale è sufficiente per tenerlo.
ArunRaj

14
La differenza di 6 decimali (0,000001) in latitudine è di ~ 0,11 metri di lunghezza e in longitudine di ~ 0,11 metri di latitudine vicino all'equatore e vicino al delta dei poli in longitudine è molto più piccola distanza (4 gradi decimali diventano 20 cm). Quindi in media 6 decimali sono sufficienti per una risoluzione di 10 cm.
JasonM1,

4
Grazie per la bella spiegazione.
ArunRaj

1
Potrei suggerire di usare 0.1 mdove stai attualmente usando 10 cm(tranne quando dici "circa 10 cm"). Altrimenti risposta eccellente.
Floris,


192
  • Latitudine : max / min +90a-90

  • Longitudine : max / min +180a-180


@RickJames Sfortunatamente in alcuni paesi, sì.
vpibano,

31

Le lunghezze valide vanno da -180 a 180 gradi.

Le latitudini dovrebbero essere comprese tra -90 e 90 gradi, ma le aree molto vicine ai poli non sono indicizzabili.

Quindi i limiti esatti, come specificato da EPSG: 900913 / EPSG: 3785 / OSGEO: 41001 sono i seguenti:

  • Le lunghezze valide vanno da -180 a 180 gradi.
  • Le latitudini valide vanno da -85,05112878 a 85,05112878 gradi.

7
I limiti indicati in questa risposta sono per una PROIEZIONE MAPPA specifica. Questa risposta non è una risposta valida alla domanda e fuorviante. Un problema completamente diverso.
bugmenot123,

Sai perché le latitudini valide vanno da -85 a 85? Ho cercato dappertutto per scoprire il motivo. Mi piacerebbe sapere il motivo dietro.
Ludvig W,

2
@Lurr Forse perché non vuoi finire al Polo Nord e Sud. Se la terra è un po 'appiattita ai poli, allora ha senso assottigliarsi e si appiattisce intorno all'85 prima che raggiunga il 90 ° grado
Nditah

24

La latitudine massima in totale è: 9 (12.3456789), longitudine 10 (123.4567890), entrambe hanno un massimo di 7 caratteri decimali (almeno è quello che posso trovare su Google Maps ),

Ad esempio, entrambe le colonne in Rails e Postgresql hanno un aspetto simile al seguente:

t.decimal :latitude, precision: 9, scale: 7
t.decimal :longitude, precision: 10, scale: 7

8

Il tipo di dati ideale per l'archiviazione dei valori Lat Long in SQL Server è decimale (9,6)

Come altri hanno già detto, questo ha una precisione di circa 10 cm, pur utilizzando solo 5 byte di memoria.

per esempio CAST(123.456789 as decimal(9,6)) as [LatOrLong]



0

Sono consapevole che esistono già diverse risposte, ma l'ho aggiunto, in quanto aggiunge informazioni sostanziali sui decimali e quindi sulla lunghezza massima richiesta.

La lunghezza di latitudine e langitudine dipende dalla precisione. La lunghezza massima assoluta per ciascuno è:

  • Latitudine: 12 caratteri (esempio: -90.00000001)
  • Longitudine: 13 caratteri (esempio: -180.00000001)

Per entrambe le prese: è possibile un massimo di 8 decalcomanie (anche se non comunemente utilizzate).

Spiegazione per la dipendenza dalla precisione:

inserisci qui la descrizione dell'immagine

Vedi la tabella completa dell'articolo in gradi decimali su Wikipedia

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.