Discussion:
Hallo,,,ich möchte UTM (ETSR 89) Koordinaten in WGS84 umrechnen.,Nun habe ich hier gelesen, dass beide Koordinaten sehr ähnlich sind und,sich nur marginal (unter 1m) unterscheiden.,,Diese Genauigkeit reicht mir aus. Wie kann ich nun die UTM Koordinate in,eine WGS84,umwandeln ?,,UTM ist Dezimal ( 334569 5663017) und WGS84 ist eine Fließkommazahl (,6.4514.... 50.7141...) ?!,,,Greets,, Byte
Bytechanger
2010-03-26 12:51:56 UTC
Permalink
Hallo,

ich möchte UTM (ETSR 89) Koordinaten in WGS84 umrechnen.
Nun habe ich hier gelesen, dass beide Koordinaten sehr ähnlich sind und
sich nur marginal (unter 1m) unterscheiden.

Diese Genauigkeit reicht mir aus. Wie kann ich nun die UTM Koordinate in
eine WGS84
umwandeln ?

UTM ist Dezimal ( 334569 5663017) und WGS84 ist eine Fließkommazahl (
6.4514.... 50.7141...) ?!


Greets

Byte
Chris-Hein Lunkhusen
2010-03-26 13:01:15 UTC
Permalink
Post by Bytechanger
ich möchte UTM (ETSR 89) Koordinaten in WGS84 umrechnen.
Nun habe ich hier gelesen, dass beide Koordinaten sehr ähnlich sind und
sich nur marginal (unter 1m) unterscheiden.
Ja, ca. 50 cm bei uns auf der Europaplatte ;-). Es heisst übrigens ETRS.
Post by Bytechanger
Diese Genauigkeit reicht mir aus. Wie kann ich nun die UTM Koordinate in
eine WGS84 umwandeln ?
UTM ist Dezimal ( 334569 5663017) und WGS84 ist eine Fließkommazahl (
6.4514.... 50.7141...) ?!
da gibt Software wie Sand am Meer, was hättest Du denn gerne?

Online oder Offline Programm? Für Windows oder Linux? Batchfähig?

Chris
Bytechanger
2010-03-26 13:10:35 UTC
Permalink
Hi,

am liebsten in JavaScript oder VB(.NET) / VBA.
Ich möchte die Umrechnung selber in einem VBA Macro
vornehmen...


Greets


Byte
Post by Chris-Hein Lunkhusen
Post by Bytechanger
ich möchte UTM (ETSR 89) Koordinaten in WGS84 umrechnen.
Nun habe ich hier gelesen, dass beide Koordinaten sehr ähnlich sind und
sich nur marginal (unter 1m) unterscheiden.
Ja, ca. 50 cm bei uns auf der Europaplatte ;-). Es heisst übrigens ETRS.
Post by Bytechanger
Diese Genauigkeit reicht mir aus. Wie kann ich nun die UTM Koordinate in
eine WGS84 umwandeln ?
UTM ist Dezimal ( 334569 5663017) und WGS84 ist eine Fließkommazahl (
6.4514.... 50.7141...) ?!
da gibt Software wie Sand am Meer, was hättest Du denn gerne?
Online oder Offline Programm? Für Windows oder Linux? Batchfähig?
Chris
_______________________________________________
Talk-de mailing list
http://lists.openstreetmap.org/listinfo/talk-de
Chris-Hein Lunkhusen
2010-03-26 13:30:53 UTC
Permalink
Post by Bytechanger
am liebsten in JavaScript oder VB(.NET) / VBA.
Ich möchte die Umrechnung selber in einem VBA Macro
vornehmen...
Ich hatte das mal in Progress programmiert, anhand
der Formeln aus der untenstehenden URL.

Weiss nicht mehr genau was der Input-Parameter long0
war. Vermutlich die UTM Zone oder der Mittelmeridian.

sq(x) = x * x, exp(x,y) = x^y

/* UTM CONVERSION PROCEDURE */
/* Ref: http://www.uwgb.edu/dutchs/UsefulData/UTMFormulas.htm */

procedure utm2latlon:
def input parameter x as dec.
def input parameter y as dec.
def input parameter long0 as dec.

def output parameter lat as dec.
def output parameter lon as dec.

x = x - 500000.

def var k0 as dec init 0.9996.
def var pi as dec init 3.14159265358979323846264338328.

def var M as dec.
def var mu as dec.
def var a as dec init 6378137.
def var b as dec init 6356752.3142.
def var e as dec.
def var es2 as dec.
def var e1 as dec.
def var C1 as dec.
def var T1 as dec.
def var N1 as dec.
def var R1 as dec.
def var D as dec.
def var fp as dec.
def var J1 as dec.
def var J2 as dec.
def var J3 as dec.
def var J4 as dec.
def var Q1 as dec.
def var Q2 as dec.
def var Q3 as dec.
def var Q4 as dec.
def var Q5 as dec.
def var Q6 as dec.
def var Q7 as dec.

e = exp(1 - sq(b) / sq(a), 0.5).
es2 = e * e / (1 - e * e).

M = y / k0.

mu = M / (a * (1 - e * e / 4 - 3 * exp(e,4) / 64 - 5 * exp(e,6) /
256.0)).
e1 = (1 - exp(1 - e * e, 0.5)) / (1 + exp(1 - e * e, 0.5)).

J1 = 3.0 * e1 / 2.0 - 27.0 * exp(e1,3) / 32.0.
J2 = 21.0 * e1 * e1 / 16.0 - 55.0 * exp(e1,4) / 32.0.
J3 = 151.0 * exp(e1,3) / 96.0.
J4 = 1097.0 * exp(e1,4) / 512.0.

fp = mu + J1 * sinus(2 * mu) + J2 * sinus(4 * mu) + J3 * sinus(6 *
mu) + J4 * sinus(8 * mu).

C1 = es2 * sq(cosinus(fp)).
T1 = sq(tangens(fp)).
R1 = a * (1 - e * e) / exp(1 - e * e * sq(sinus(fp)), 1.5).
N1 = a / exp( 1 - sq(e) * sq(sinus(fp)), 0.5).
D = x / (N1 * k0).

Q1 = N1 * tangens(fp) / R1.
Q2 = D * D / 2.0.
Q3 = (5.0 + 3.0 * T1 + 10 * C1 - 4 * C1 * C1 - 9 * es2) * exp(D,4) /
24.0.
Q4 = (61.0 + 90.0 * T1 + 298 * C1 + 45 * T1 * T1 - 3 * C1 * C1 -
252.0 * es2) * exp(D,6) / 720.0.
Q5 = D.
Q6 = (1.0 + 2.0 * T1 + C1) * exp(D,3) / 6.0.
Q7 = (5.0 - 2.0 * C1 + 28 * T1 - 3 * C1 * C1 + 8 * es2 + 24 * T1 *
T1) * exp(D,5) / 120.0.

lat = fp - Q1 * (Q2 - Q3 + Q4).
lat = lat * 180.0 / pi.

lon = (Q5 - Q6 + Q7) / cosinus(fp).
lon = lon * 180.0 / pi.
lon = lon + long0.

end procedure.
Sven Geggus
2010-03-26 13:49:26 UTC
Permalink
Post by Bytechanger
am liebsten in JavaScript
Schua mal nach pro4js: http://proj4js.org/
Post by Bytechanger
oder VB(.NET) / VBA.
Von M$ Zeug hab ich null Ahnung da muss jemand anderes was zu schreiben.

Sven
--
This APT has Super Cow Powers.
(apt-get --help on debian woody)

/me is ***@ircnet, http://sven.gegg.us/ on the Web
Sven Geggus
2010-03-26 13:18:11 UTC
Permalink
Post by Bytechanger
Diese Genauigkeit reicht mir aus. Wie kann ich nun die UTM Koordinate in
eine WGS84 umwandeln ?
Zum Beispiel mit proj4
Post by Bytechanger
UTM ist Dezimal ( 334569 5663017) und WGS84 ist eine Fließkommazahl (
6.4514.... 50.7141...) ?!
Ich nehme an es geht um die in Deutschland verwendeten UTM Zonen 32 und 33:

EPSG:25832 = ETRS89, UTM, Zone 32
EPSG:25833 = ETRS89, UTM, Zone 33

Für Dein oben genanntes Beispiel ginge dann zum Beispiel mit proj4 wie
folgt:

echo 334569 5663017 | cs2cs -f "%.6f" +init=epsg:25832 +to +init=epsg:4326
6.637456 51.094756 0.000000

Das ist irgendwo in der Nähe von Grevenbroich:

http://www.openstreetmap.org/?mlat=51.094756&mlon=6.637456

Für den umgekehrten Weg einfach epsg:25832 und epsg:4326 vertauschen.

Ein python script dass das selbe mit proj4 über die gdal bindings macht hab
ich auch noch irgendwo rumliegen.

Gruss

Sven
--
Kernel panic: I have no root and I want to scream
(Linux Kernel Error Message)

/me is ***@ircnet, http://sven.gegg.us/ on the Web
Loading...