393 Stimmen

Was sind die Längen der Standortkoordinaten, Breite und Länge?

Wie viele Stellen können Breitengrad und Längengrad haben, vor dem Dezimalpunkt und nach dem Dezimalpunkt?

Hier ist ein Beispiel, das ich von dem Standort erhalten habe, der von einem Windows-Phone-Gerät gesendet wurde:

Breitengrad=-63572375290155
Längengrad=106744840359415

Dies ist sehr lang und überschreitet die Größe meiner Tabellenspalte und verursacht Fehler.

780voto

CodeMonkey Punkte 20336

Wenn die Breitengradkoordinate in Dezimalgrad als -6,3572375290155 oder -63,572375290155 angegeben ist, könnten Sie auf 6 Dezimalstellen runden und für eine Präzision von 10 cm (oder 0,1 Metern) speichern. Wenn das Koordinatenreferenzsystem (CRS) nicht EPSG:4326 ist (z.B. EPSG:3857), dann messen die x- und y-Werte einen Abstand in Metern vom Ursprungspunkt anstatt in Grad.

Überblick

Der gültige Bereich des Breitengrads in Grad beträgt -90 und +90 für die südliche und nördliche Hemisphäre. Der Längengrad liegt im Bereich von -180 und +180, der Koordinaten westlich und östlich des Nullmeridians angibt. Zur Referenz hat der Äquator einen Breitengrad von 0°, der Nordpol hat einen Breitengrad von 90° nördlich (geschrieben 90° N oder +90°) und der Südpol hat einen Breitengrad von -90°.

Der Nullmeridian hat einen Längengrad von 0°, der durch Greenwich, England, verläuft. Die Internationale Datumsgrenze (IDL) folgt grob dem 180° Längengrad. Ein Längengrad mit positivem Wert fällt in die östliche Hemisphäre und der negative Wert in die westliche Hemisphäre.

Dezimale Grad Genauigkeit

Sechs (6) Dezimalstellen Präzision bei Koordinaten in Dezimalgrad-Notation entspricht einer Auflösung von 10 cm (oder 0,1 Metern). Jeder Unterschied von .000001 in der Dezimalgrad-Koordinate entspricht ungefähr einer Länge von 10 cm. Zum Beispiel ist die Abbildung von Google Earth und Google Maps typischerweise auf einer 1-Meter-Auflösung, und einige Orte haben eine höhere Auflösung von 1 Zoll pro Pixel. Eine Auflösung von einem Meter kann mit 5 Dezimalstellen dargestellt werden, sodass mehr als 6 Dezimalstellen für diese Auflösung überflüssig sind. Der Abstand zwischen Längengraden am Äquator ist derselbe wie beim Breitengrad, aber der Abstand zwischen Längengraden erreicht an den Polen Null, da die Meridianlinien an diesem Punkt zusammenlaufen.

Für Millimeter (mm)-Genauigkeit sollten Breiten- / Längengrade mit 8 Dezimalstellen im Dezimalgrad-Format dargestellt werden. Da die meisten Anwendungen nicht diese Präzisionsstufe benötigen, sind 6 Dezimalstellen für die meisten Fälle ausreichend.

In die andere Richtung repräsentieren ganze Dezimalgrade eine Entfernung von ca. 111 km (oder 60 Seemeilen) und ein Unterschied von 0,1 Dezimalgrad entspricht einer Entfernung von ca. 11 km.

Hier ist eine Tabelle der Unterschiede in Dezimalstellen für den Breitengrad mit den Delta-Graden und der geschätzten Entfernung in Metern unter Verwendung von 0,0 als Ausgangspunkt.

Dezimalstellen

Dezimalgrade

Entfernung (Meter)

Hinweis

0

1,0

110.574,3

111 km

1

0,1

11.057,43

11 km

2

0,01

1.105,74

1 km

3

0,001

110,57

4

0,0001

11,06

5

0,00001

1,11

6

0,000001

0,11

11 cm

7

0,0000001

0,01

1 cm

8

0,00000001

0,001

1 mm

Grad-Minuten-Sekunden (DMS) Darstellung

Für die DMS-Notation entspricht 1 Bogensekunde = 1/60/60 Grad = ~30 Meter Länge und ein Delta von 0,1 Bogensekunden entspricht ~3 Metern.

Beispiel:

  • 0° 0' 0" W, 0° 0' 0" N 0° 0' 0" W, 0° 0' 1" N 30,715 Meter
  • 0° 0' 0" W, 0° 0' 0" N 0° 0' 0" W, 0° 0' 0,1" N 3,0715 Meter

1 Bogensekunde = 1/60 Grad = ~2000m (2km)


Aktualisierung:

Hier ist ein amüsanter Comicstrip über Koordinatengenauigkeit.

246voto

Layke Punkte 48417

Google Maps verwendet tatsächlich signierte Werte, um die Position darzustellen:

  • Breitengrad: MAX/MIN 90.0000000 bis -90.0000000

  • Längengrad: MAX/MIN 180.0000000 bis -180.0000000

Wenn Sie also mit Koordinaten in Ihren Projekten arbeiten möchten, benötigen Sie DECIMAL(10,7) d.h. für SQL.

33voto

Mikhail Vasin Punkte 2071

Gültige Längengrade liegen zwischen -180 und 180 Grad.

Die Breitengrade sollten zwischen -90 Grad und 90 Grad liegen, aber Gebiete in der Nähe der Pole sind nicht indexierbar.

Die genauen Grenzen, wie von EPSG:900913 / EPSG:3785 / OSGEO:41001 angegeben, sind wie folgt:

  • Gültige Längengrade liegen zwischen -180 und 180 Grad.
  • Gültige Breitengrade liegen zwischen -85.05112878 und 85.05112878 Grad.

26voto

Bengala Punkte 952

Die maximale Breite insgesamt beträgt: 9 (12.3456789), Längengrad 10 (123.4567890), sie haben beide maximal 7 Dezimalstellen (Zumindest ist das, was ich in Google Maps finden kann),

Zum Beispiel sehen beide Spalten in Rails und Postgresql so aus:

t.decimal :latitude, Präzision: 9, Skala: 7
t.decimal :longitude, Präzision: 10, Skala: 7

Bearbeiten:

Wie Jasie sagte, sollten maximal 8 Dezimalstellen sein, aber nur wenige Webdienste akzeptieren das.

8voto

ukgav Punkte 99

Der ideale Datentyp zur Speicherung von Breiten- und Längengradwerten in SQL Server ist decimal(9,6)

Wie andere bereits gesagt haben, liegt dies bei etwa 10 cm Genauigkeit, während nur 5 Bytes Speicherplatz verwendet werden.

z.B. CAST(123.456789 as decimal(9,6)) as [Breite oder Länge]

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X