| UTM-Koordinaten eignen sich ausgezeichnet für lokale und regionale Maßstäbe bis zu einigen 100km Für größere (globale) Maßstäber verwendet man besser klassische Grad-Koordinaten. | Auf dieser Seite finden sie einige Hinweise und Beispiele zur Umrechnung (Transformation) von UTM-Koordinaten und klassischen geografischen Koordinaten (Grad). Alle Angaben sind unverbindlich, die Verwendung erfolgt auf eigenes Risiko ! |
Kartografie
|
Orientierung auf der Erdoberfläche |
| UTM | Universal Transverse Mercator - Projektion |
| UTM-Zone | UTM-(Längen)-Zone, Zonen-Grenzen und Zentral-Meridian |
| UTM-Zonenfeld | UTM-(Breiten)-Zone (optional) |
| Erdmodell | Auswahl des Rotations-Ellipsoids und Initialisierungs-Arbeiten |
| Array | Rückgabe von Arrays aus (Unter)-Programmen |
| Initialisierung | Einmalige Berechnung von Variablen |
| UTM-Zone | Berechnung der UTM-(Längen)-Zone |
| UTM-Ostwert | Die UTM X-Koordinate (Easting) in Meter |
| UTM-Nordwert | Die UTM Y-Koordinate (Northing) in Meter |
| Geogr. Länge | Länge in Grad aus UTM-Koordinaten |
| Geogr. Breite | Breite in Grad aus UTM-Koordinaten |
| Test | Vergleichs-Daten für eigene Tests, Genauigkeit |
| Links |
Ausgewählte
|
| Verwandte Themen: | Live Interaktive Weltkarte |
UTM - Universal Transverse Mercator - Projektion |
|
|
UTM ist der moderne weltweite Standard für die Angabe geografischer
Koordinaten. Punkt-Angaben bestehen aus UTM-(Längen)-Zone, Ostwert und Nordwert. UTM-Koordinaten (Ostwert, Nordwert) werden in Meter angegeben und sind als ebene cartesische (XY)-Koordinaten verwendbar. Daher kann man mit UTM-Koordinaten mit einfachen Methoden der analytischen Geometrie rechnen. Das ist der größte Vorteil von UTM-Koordinaten. |
Allerdings ist die Verwendung jeweils auf eine einzige UTM-Zone beschränkt,
d.h. alle gleichzeitig verwendeten Orte müssen aus der gleichen UTM-Zone
stammen oder in eine einzige Zone umgerechnet werden. Auf dieser Seite finden sie Hinweise und Beispiele zur Umrechnung (Transformation) geografischer Koordinaten. Alle Angaben ohne Gewähr - Verwendung auf eigenes Risiko ! |
|
Der einfachen Anwendung von UTM-Koordinaten steht die relativ schwierige
Umrechnung (Transformation) gegenüber. Transformationen sind relativ
aufwändig und werden in der Praxis nicht 'exakt' sondern
näherungsweise berechnet, d.h. die Methoden der Umrechnung
(Reihen-Entwicklungen) werden an die gewünschte Genauigkeit angepasst. Für den Amateur-Gebrauch, für die Arbeit mit Landkarten und für die Orientierung in der realen Natur ist eine Genauigkeit von 1..10m sinnvoll. An diesem Anspruch orientieren sich daher die hier vorgestellten Algorithmen. |
Genauigkeit:
GPS: Gängige Geräte mit US-GPS oder dem
russischen Glonass erreichen eine Genauigkeit von ca. +/- 10m. Mit Hilfe
spezieller Methoden (Antennen, Referenz-Punkte, etc.) ist 1m oder besser
erreichbar. Das europäische System
Galileo ist trotz massiver US-Drohungen im Aufbau, wird jedoch erst >2012
eine Genauigkeit von ca. 10cm (kommerziell) bis 5m (öffentlich) bis in
subpolare Regionen bieten.Landkarten: Detailkarten 1:50000 sind etwa auf +/- 0.5mm genau ablesbar, das entspricht 25m in der Realität. Spezialkarten (Kataster, ...) sind bis auf ca. 10cm genau. Geodäsie: Zur Vermessung der Erdoberfläche wird Triangulation verwendet, evtl. auch mit Satelliten-Unterstützung. Die Messungen sind bis auf ca. 1cm genau. |
|
Anwendung:
Berechnung von UTM-Koordinaten aus Geografischen (Grad)-Koordinaten.Berechnung von Geografischen (Grad)-Koordinaten aus UTM-Koordinaten Umrechnung von UTM-Koordinaten in eine andere (benachbarte) UTM-Zone Umrechnung von einem Erd-Modell in ein anderes. Excel + Visual Basic
Alle vorgestellten Beispiele dieser Seite sind in der Programmiersprache
Visual Basic for Applications
(→
VBA) programmiert. Sie lassen sich als 'Benutzer-Definierte Funktionen'
im Kalkulations-Programm M$Excel verwenden.Mit etwas Geschick lassen sich die Beispiele in jede andere Programmier-Sprache übertragen. |
Software:
Zur Koordinaten-Transformation werden eigene Software-Pakete angeboten.
Der Markt ist allerdings auf professionelle Spezialisten beschränkt,
daher sind kostenfreie Produkte rar.Das Programm Transdat wird vom deutschen Hersteller Killetsoft in professioneller Qualität als Demo-Version angeboten. Im Internet können einige Transformations-Programme frei verwendet werden. In den meisten Fällen handelt es sich um → Java-Applets. Diese lassen sich mit etwas Geschick auch am eigenen PC installieren. Vor der Verwendung unbekannter Software sollte man die Ergebnisse mit "garantierten" Daten vergleichen, z.B. mit Koordinaten-Angaben offizieller Stellen. |
UTM - (Längen) - Zone |
|
|
Für das UTM-System wird die Erde von West nach Ost in
60 Zonen = Meridianstreifen eingeteilt. Jeder Streifen umfasst 6 Längengrad. Die Zonen werden von West nach Ost nummeriert, beginnend an der Datumgrenze (geogr.Länge 180°=-180°) mit Zone 1. |
Die Ost-West-Erstreckung der UTM-Zonen ist zwar in Längengrad immer
konstant 6°, verringert sich jedoch in km vom Äquator (668 km auf
0° Breite) zum Pol (70 km auf 84° Breite ). In Mitteleuropa
beträgt sie ca. 450km. Grenzen: Die UTM-Zonen sind auf den Bereich -80° (Süd) bis +84° (Nord) begrenzt. Das UTM-System ist in Polargebieten nicht anwendbar. |
|
Berechnung der UTM-Zone aus der geografischen
Länge in Grad (Longitude): Das Beispiel rechts (in VBA) arbeitet für Längen in Grad 0..360 oder -180..+180 Dieser Algorithmus berücksicht nicht die Ausnahmen (irreguläre Zonen) für Norwegen. |
Function utm_zone(lon_deg As Double) As Integer
utm_zone = Int((lon_deg + 360) / 6) + 31
End Function
While utm_zone > 60 utm_zone = utm_zone - 60
Wend
|
|
Berechnung der geografischen Länge in
Dezimalgrad aus der UTM-Zone: Das Beispiel berechnet die Länge in Grad an der West-Grenze (links) einer UTM-Zone. Zur Berechnung der Länge am Zentral-Meridian einer Zone addieren sie +3° (abgeschaltete Zeile). Die Länge an der Ost-Grenze ergibt sich durch Addition von +6° zur West-Grenze. |
Function utm_to_lon_deg(utm_zone As Integer) As Double
If (utm_zone > 0 And utm_zone <= 60) Then
End Function
utm_to_lon_deg = utm_zone * 6 - 186
Else
' utm_to_lon_deg = utm_zone * 6 - 183
utm_to_lon_deg = 1 / 0
End If
|
Wikipedia: Europa-Karte der UTM-Zonen
|
|
UTM Breiten-Zone (Zonenfeld) |
||
|
Jede ↑
UTM (Längen)-Zone ist von Süd nach Nord in 20 Breiten-Zonen
(Zonenfelder) zu je 8° Süd-Nord Erstreckung
(→
geografische Breite) unterteilt. Diese Unterteilung ist eine
(überflüssige) Redundanz, wenn durch die Angabe des UTM-Nordwerts
die Breite bereits festgelegt ist. Deshalb ist die Angabe des Zonenfelds optional
und eigentlich nur dann sinnvoll, wenn keine Koordinaten angegeben werden. Die Zonenfelder werden von Süd nach Nord mit Großbuchstaben bezeichnet, beginnend mit Bereich C (-80°..-72° Süd). Die Buchstaben I und O werden wegen Gefahr der Verwechslung mit den Ziffern 1 oder 0 ausgelassen, das kompliziert den Algorithmus etwas. Der Äquator liegt an der Grenze der Zonenfelder M und N. Europa liegt in den Zonenfeldern S (32°..40° Nord) bis W (64°..72° Nord). Zonenfeld X (72°..84°) ist als einziges 12° 'hoch'. Beispiel: Zonenfeld 33T reicht von (12°,40°) bis (18°,48°) Berechnung des UTM Zonenfelds aus der geografischen Breite in Grad: Rechts ein Beispiel für einen Algorithmus in VBA. Der Algo kann etwas umgestellt werden, um für bestimmte Gebiete (Mitteleuropa) auf Kosten aller anderen Gebiete schneller zu rechnen. |
Beispiel für einen Algorithmus (hier in
VBA) zur
Berechnung der UTM-Breitenzone aus der geografischen
Breite (in Grad -80..+84, Latitude):
Als Fehler-Wert wird '?' zurückgegeben.
Function utm_latzone(lat_deg As Double) As String
Dim i As Integer Dim s As String
s = "?"
End Function
If (lat_deg>= -80 And lat_deg<= 84) Then
i = Int(lat_deg / 8) + 77
End IfIf i > 72 Then i = i + 1 If i > 78 Then i = i + 1 If i > 88 Then i = i - 1 s = Chr(i) utm_latzone = s |
Nord
X
Äquator
W V U T S R Q P N
M
Süd
L K J H G F E D C |
|
Berechnung der geografischen Breite aus dem
UTM-Zonenfeld. Das Beispiel berechnet die Breite an der Süd-Grenze ('unten') eines UTM-Zonenfelds. Für illegale Felder wird ein Fehlerwert (Division durch Null) zurückgegeben. Zur Absicherung wird das erste Zeichen des übergebenen Strings isoliert und in Großbuchstaben umgewandelt. Zur Berechnung der Nord-Grenze addieren sie 8°, in der nördlichsten Zone X allerdings 12° |
Function utm_to_lat_deg(utm_latzone As String) As Double
Dim i As Integer
i = Asc(UCase(Left(utm_latzone, 1)))
End Function
If (i > 66 And i < 89) Then
If i > 72 Then i = i - 1
Else
If i > 77 Then i = i - 1 utm_to_lat_deg = i * 8 - 616 utm_to_lat_deg = 1 / 0
End If
|
|
|
MIL-Breitenzonen
Unabhängig davon ist auch eine andere Definition von Breiten-Zonen in
Gebrauch. Sie dürfte vorwiegend im militärischen Umfeld Anwendung
finden, ist jedoch auf neueren Landkarten guter Qualität angeführt.
|
Die MIL-Breitenzonen haben eine Süd-Nord Erstreckung von
4° und werden ebenfalls mit Buchstaben
bezeichnet, jedoch in anderer Reihenfolge. ♦ Details dazu auf der Seite zu den österr. Karten 1:50000 |
|
Wikipedia: Europa-Karte der UTM-Zonen
|
||
Koordinaten-Transformation (Länge,Breite) ↔ (UTM-Zone, UTM-E, UTM-N) |
|||||||||||||||
| Die Algorithmen zur Umwandlung von geografischer Länge und Breite in UTM-Koordinaten und umgekehrt sind relativ komplex und erfordern professionelle kartografische Kenntnisse. |
Sie werden daher hier als Muster ohne Gewähr vorgestellt
und nur aus IT-Sicht kommentiert.
Die Anwendung der Beispiele erfolgt auf eigenes Risiko !
|
||||||||||||||
Die Erd-Oberfläche wird in allen einfachen Rechnungen als
Rotations-Ellipsoid angenommen.Dieser Körper wird durch seinen Mittelpunkt und durch die beiden Halb-Achsen a,b definiert. Je nach Kontinent und Staat wurden historisch unterschiedliche Erd-Modelle definiert, die den nationalen Verhältnissen optimal angepasst waren. Heute werden nur mehr globale Erd-Modelle verwendet, meistens das Modell WGS84, dessen Daten im folgenden Beispiel fix eingetragen sind. |
Alle hier gezeigten Beispiele verwenden das gleiche Erd-Modell WGS84 Wenn sie ein anderes Erd-Modell verwenden wollen, ersetzen sie die beiden Achsen a,b durch dessen Daten. Eine Verschiebung des Mittelpunkts wird in diesem vereinfachten Beispiel nicht berücksichtigt, ebenso ein Wechsel des Erd-Modells ('Datum-Transformation'). |
||||||||||||||
|
Klicken sie ein Modell der Liste, um die Details anzuzeigen. Verwenden sie im Zweifel immer WGS84. Die Modelle unterscheiden sich historisch (Zeitpunkt der Daten-Aufnahme und Modell-Rechnung) und geografisch. Alle älteren Modelle haben regionale Bedeutung: Sie sind an eine Region optimal angepasst, ergeben jedoch bei Anwendung auf andere Kontinente größere Fehler. Die globalen Modelle gehen auf die US-Armee zurück, die als erste (und seither laufend) globale Kriege führte. In den USA wird NAD (Basis Clarke 1866) in ca. 137 regionalen Varianten (zones) verwendet. Links: Wikipedia, Kowoma (de) |
Die Daten stammen aus unterschiedlichen Quellen und wurden ergänzt:
2 der 3 angeführten Zahlen-Daten genügen zur Berechnung aller
anderen Ellipsoid-Werte.
a ... Große (äquatoriale) Halbachse des Rotations-Ellipsoids in m
b ... Kleine (polare) Halbachse des Rotations-Ellipsoids in m Ursprung: Der xyz Koordinaten-Ursprung der Modelle liegt teilweise etwas verschoben. Diese Daten unterscheiden sich je nach Anwendung (auf ein Staatsgebiet) und sind hier subjektiv gewichtet. |
||||||||||||||
Einige abgeleitete Daten:
|
|||||||||||||||
Arrays |
|
| Alle modernen Programmiersprachen können aus Unterprogrammen (Functions, Subs) nicht nur einzelne Variable (Skalare) sondern auch Arrays zurückgeben. | In diesem Fall genügt zur Umrechnung von Grad in UTM und umgekehrt je eine einzelne Funktion, die ein Array von 2 (Länge, Breite) oder 3 (UTM) Werten zurückgibt. |
| Für die Kombination von Excel + VisualBasic sind 5 einzelne Funktionen notwendig, da eine mit Excel verwendete VBA-Function nur genau einen Wert zurückgeben kann. Daher werden leider manche Programm-Teile mehrfach ausgeführt. | Vorläufig werden hier nur die Visual Basic Beispiele vorgestellt, weil die Kombination mit Excel derzeit die größte praktische Bedeutung hat. |
| Wenn Sie die Beispiele sinngemäß auf andere Programmiersprachen übertragen, dann ist es sinnvoll, sie in 2 Programme zuzsammenzufassen und Arrays zurückzugeben. Das macht die Programme einfacher und etwa doppelt so schnell. | ♦ Details zu Arrays (Javascript, Perl, PHP, VBA) |
Berechnung der UTM-(Längen)-Zone |
|
|
UTM-Zone
Der Vollständigkeit halber wird die im Absatz
↑ UTM-Zone
beschriebene Formel zur Berechnung der UTM-Zone aus der geografischen Länge
in Dezimalgrad (Longitude) hier wiederholt.Die irregulären Zonen in Nordeuropa werden hier nicht berücksichtigt ! ♣ Für Orts-Koordinaten ist die Angabe der UTM-Zone unbedingt erforderlich. UTM-Koordinaten ohne Zone sind undefiniert ! Ausnahme: Rechnen (Abstand, Richtung, ..) mit UTM-Koordinaten sehr kleiner Gebiete, die sich garantiert in der gleichen UTM-Zone befinden. |
Function utm_zone(lon_deg As Double) As Integer
While lon_deg < 0
End Function
lon_deg = lon_deg + 360
WendWhile lon_deg > 360 lon_deg = lon_deg - 360
Wend
utm_zone = Int((lon_deg + 180) / 6) + 1 While uz > 60 uz = uz - 60
Wend
|
Berechnung des UTM Ost-Werts (Easting) |
|
|
UTM-Ostwert
Das Beispiel zeigt die Berechnung des UTM Ost-Werts in Meter aus der
geografischen Länge (östl. Greenwich) und Breite (nördl.
Äquator) in Grad.Der Ost-Wert ergibt nach Subtraktion der Zahl 500000 den Abstand eines Ortes vom Zentral-Meridian der UTM-Zone in Meter = die X-Koordinate für einfache Rechnungen in ebener Geometrie. Vor der Rechnung wird die ↑ Initialisierung der globalen Variablen (Programm init) ausgeführt, falls nötig. Das Argument utm_zone ist optional. Wenn es weggelassen wird, dann wird der UTM-Ostwert der 'natürlichen' UTM-Zone berechnet. Ansonsten wird der Ostwert der gewünschten Zone berechnet. ♣ Begrenzen sie in eigenen Programmen diese Option auf die beiden Nachbarzonen ! - Transformation in weiter entfernte Zonen ergibt unbrauchbar große Verzerrungen. ► Die Beispiel-Funktion transformiert alle Koordinaten ohne Änderung des Erdmodells. |
Function lonlat_to_utme( _
lon_deg As Double, _
Dim cm, uz As Integerlat_deg As Double, _ Optional utm_zone As Integer = 0) _ As Double Dim lat, lon, nu, p, k4, k5 As Double
If pi <= 0 Then Call init
End Functionuz = zone_test(lon_deg, utm_zone) cm = uz * 6 - 183 lat = lat_deg * pi / 180 nu = a / Sqr(1 - (e * Sin(lat))^2) k4 = nu * Cos(lat) * s1 * k0 * 10000 p = (lon_deg - cm) * 3600 / 10000 k5 = (s1 * Cos(lat))^3 _
* (nu / 6) _
lonlat_to_utme = 500000 + k4 * p + k5 * p^3
* (1 - Tan(lat)^2 + e1sq * Cos(lat)^2) _ * k0 * 1000000000000 |
|
Die Hilfs-Funktion zone_test wurde eingeführt,
um die Koordinaten von Punkten in eine Nachbar-Zone zu transformieren. Das ist notwendig, wenn man Rechnungen mit Punkten durchführen will, die sich auf beiden Seiten einer UTM Zonengrenze befinden: In diesem Fall transformiert man alle Punkte in die gleiche Zone - vorzugsweise dorthin, wo die Punkte weiter von der Grenze entfernt sind. ● Vorteil: Im UTM-System sind einfache Rechnungen in einem XY-Koordinaten-System möglich. ● Nachteil: Die Verzerrung wächst rasch mit dem Abstand vom jeweiligen Zentral-Meridian: Für große Entfernungen benutzt man besser ein anderes System als UTM (=andere Landkarten). |
Private Function zone_test( _
lon_deg As Double, _
Dim zt As Integer
Optional utm_zone As Integer = -9999) _ As Integer
zt = utm_zone
End Function
If (zt > -9999) Then
While zt < 0
Else
zt = zt + 60
WendWhile zt > 60 zt = zt - 60
Wend
zt = lonlat_to_utmz(lon_deg)
End Ifzone_test = zt |
Berechnung des UTM Nord-Werts (Northing) |
|
|
UTM-Nordwert
Das Beispiel zeigt die Berechnung des UTM Nord-Werts in Meter aus der
geografischen Länge (östl. Greenwich) und Breite (nördl.
Äquator) in Grad.Der Nord-Wert entspricht dem Abstand eines Ortes vom Äquator in Metern = die Y-Koordinate für einfache Rechnungen in ebener Geometrie. Vor der Rechnung wird die ↑ Initialisierung der globalen Variablen (s.o.) ausgeführt, falls nötig. Das Argument utm_zone ist optional. Wenn es weggelassen wird, dann wird der UTM-Nordwert der 'natürlichen' UTM-Zone berechnet. Ansonsten wird der Nordwert der angegebenen Nachbar-Zone berechnet. ► Die Beispiel-Funktion transformiert die Koordinaten ohne Änderung des Erdmodells. |
Function lonlat_to_utmn( _
lon_deg As Double, _
Dim cm, uz As Integerlat_deg As Double, _ Optional utm_zone As Integer = 0) _ As Double Dim lat, k1, k2, k3, s, nu, p As Double
If pi <= 0 Then Call init
End Function
uz = zone_test(lon_deg, utm_zone) cm = utm_zone * 6 - 183 lat = lat_deg * pi / 180 s = a0 * lat _
- a1 * Sin(2 * lat) _
k1 = s * k0+ a2 * Sin(4 * lat) _ - a3 * Sin(6 * lat) _ + a4 * Sin(8 * lat) nu = a / Sqr(1 - (e * Sin(lat))^2) k2 = nu * Sin(lat) * Cos(lat) * s1^2 _ * k0 * 100000000 / 2
p = (lon_deg - cm) * 3600 / 10000k3 = ((s1^4 * nu * Sin(lat) * Cos(lat)^3) / 24) _
* (5 - Tan(lat)^2 + 9 * e1sq * Cos(lat)^2 _
lonlat_to_utmn = k1 + k2 * p^2 + k3 * p^4
+ 4 * e1sq * e1sq * Cos(lat)^4) * k0 * 1E+16 |
Berechnung der geografischen Länge (Longitude) |
|
|
Geografische Länge in Dezimalgrad Das Beispiel zeigt die Berechnung der geografischen Länge aus UTM-Zone, sowie UTM-Easting und UTM-Northing in Meter. Die geografische Länge gibt den Abstand eines Ortes vom Null-Meridian (durch Greenwich) in West→Ost-Richtung in Grad (0..360°) an. Das Beispiel berechnet Dezimal-Grad. Umrechnung in → Grad, Minuten und Sekunden. Vor der Rechnung wird die ↑ Initialisierung der globalen Variablen (s.o.) ausgeführt, falls nötig. ► Die Beispiel-Funktion transformiert die Koordinaten ohne Änderung des Erdmodells. |
Function utm_to_lon( _
utm_z As Integer, _
Dim cm As Integer utm_e As Double, _ utm_n As Double) _ As Double Dim asp, cp2, d, lon, mu, phi, tp2, utm_y As Double
If pi <= 0 Then Call init
If (utm_n >= 10000000) Then utm_y = utm_n - 10000000
Else
utm_y = utm_n
End Ifcm = utm_z * 6 - 183 mu = utm_y / mui phi = mu _
+ (3 * e1 / 2 - 27 * e1^3 / 32) _
asp = a / Sqr(1 - e2 * Sin(phi) * Sin(phi))* Sin(2 * mu) _ + (21 * e1^2 / 16 - 55 * e1^4 / 32) _ * Sin(4 * mu) _ + (151 * e1^3 / 96) _ * Sin(6 * mu) tp2 = Tan(phi) * Tan(phi) cp2 = e2 * Cos(phi) * Cos(phi) d = (utm_e - 500000) / (asp * k0) lon = (d - (1 + 2 * tp2 + cp2) _
* d^3 / 6 + (5 - 2 * cp2 + 28 * tp2 _
utm_to_lon = cm + lon * 180 / pi- 3 * cp2^2 + 8 * e1sq + 24 * tp2^2) _ * d^5 / 120) / Cos(phi) End Function |
Berechnung der geografischen Breite (Latitude) |
|
|
Geografische Breite in Dezimalgrad Das Beispiel zeigt die Berechnung aus UTM-Zone (dimensionslos) sowie UTM-Easting und UTM-Northing in Meter. Die geografische Breite gibt den Abstand eines Ortes vom Äquator in Süd→Nord-Richtung in Grad (-90°..+90°) an. Das Beispiel berechnet Dezimal-Grad. Umrechnung in → Grad, Minuten und Sekunden. Vor der Rechnung wird die ↑ Initialisierung der globalen Variablen (s.o.) ausgeführt, falls nötig. Die Beispiel-Funktion transformiert die Koordinaten ohne Änderung des Erdmodells. |
Function utm_to_lat( _
utm_z As Integer, _
Dim lat, phi, r1, utm_y As Doubleutm_e As Double, _ utm_n As Double) _ As Double Dim asp, cp2, d, mu, tp2 As Double
If pi <= 0 Then Call init
End Function
If (utm_n >= 10000000) Then utm_y = utm_n - 10000000
Else
utm_y = utm_n
End Ifmu = utm_y / mui phi = mu _
+ (3 * e1 / 2 - 27 * e1^3 / 32) _
asp = a / Sqr(1 - e2 * Sin(phi) * Sin(phi))* Sin(2 * mu) _ + (21 * e1^2 / 16 - 55 * e1^4 / 32) _ * Sin(4 * mu) _ + (151 * e1^3 / 96) _ * Sin(6 * mu) tp2 = Tan(phi) * Tan(phi) cp2 = e2 * Cos(phi) * Cos(phi) r1 = a * (1 - e2) _ / ((1 - e2 * Sin(phi) * Sin(phi)) ^ (3 / 2))
d = (utm_e - 500000) / (asp * k0)lat = phi - (asp * Tan(phi) / r1) _
* (d^2 / 2 _
utm_to_lat = lat * 180 / pi
- (5 + 3 * tp2 + 10 * cp2 - 4 * cp2^2 - 9 * e1sq) _ * d^4 / 24 _ + (61 + 90 * tp2 + 298 * cp2 + 45 * tp2^2 _ - 252 * e1sq - 3 * cp2^2) _ * d^6 / 720) |
|
|
|
Live-Transformation: JEEEP, Geodatenzentrum (de, Navigation zu Dienste | Koordinatrentransformation) |
Wikipedia:
Referenz-Ellipsoid,
UTM,
|