Mercatorprojektion berechnen

hallo liebe community,

ich sitze wiedermal an meiner diplomarbeit und könnte etwas hilfe gebrauchen. ich entwickle zur zeit ein navigationsgerät für klein- und segelflugzeuge für pda’s. die kartendarstellung wird sowohl über eine vektordarstellung als auch eine rasterdarstellung vefügen. für die vektordarstellung nutze ich die geographischen koordinaten aus der osm datenbank. einen converter der nur die relevanten informationen bzw. daten aus den osm-xml dateien zieht habe ich bereits geschrieben. nun muss ich diese daten in eine mercatorprjojektion umwandeln. die berechnungsformel habe ich aus dem wiki auf http://de.wikipedia.org/wiki/Mercator-Projektion entnommen. nun zu folgenden fragen…

…was genau bewirkt die mercatorprojektion bzw. warum muss man diese anwenden ?

…sind die osm koordinaten nicht bereits für ein navigationssystem umgerechnet ?

…kann mir jmd anhand eines beispiels zwei koordinaten aus dem osm projekt in die mercatorprojektion umwandeln bzw. ein rechnbeispiel zeigen ?

ich hoffe ihr könnt mir helfen. vielen dank im vorraus.

mfg

marvel

Hallo,
das grundsätzliche Problem ist, dass sich eine Kugel nicht flach machen lässt.
Beispiel: beim Schälen einer Orange bleiben die Teile immer gekrümmt.

Deshalb muss man, um von dem exakten Globus zur eine flachen Papierkarte zu kommen,
immer eine Projektion vornehmen, d.h. einem Punkt der Kugel wird ein Punkt in der Ebene
zugeordnet. Eine dieser Projektionen ist die Merkator-Projektion. Wie in dem wikipedia Artikel
erläutert hat diese für die (See-) Navigation angenehme Eigenschaft, dass bei der Projektion
die Winkel erhalten bleiben.

Ich nehme an, dass etwas Ähnliches auch für die Luftnavigation gilt.

Beim Navigieren mit Landfahrzeugen in unserem Teil der Welt ist der Winkel kein wesentliches
Element, da hier im überwiegend auf Straße oder Wegen gefahren wird.

Mit den in http://de.wikipedia.org/wiki/Mercator-Projektion angegebenen Formeln und dem
Erdradius http://de.wikipedia.org/wiki/Erdradius sollte es kein Problem sein, aus den OSM Winkel-
daten die Merkator Koordinaten zu berechnen.

Hier ein Beispiel:
phi λ y(m) x(m)
Stuttgart Fernsehturm 48.755751 9.190265 6233518.6 1023055.6
Stuttgart Hbf 48.783868 9.182127 6238267.6 1022149.7
Abstand 4749.0 -905.9
R(m) 6378137

Zu beachten: phi und λ sind in grad angegeben, die Winkelfunktionen verlangen rad.
y wird ab Äquator gemessen, x ab Nullmeridian (Greenwich).

Wenn Du eine e-mail hinterlässt, schicke ich die Excel-Tabelle.

Ich halte diese Frage in der heutigen Zeit fuer nicht ganz korrekt – oder zumindest fuer irrefuehrend. Welche Art von Koordinaten verwendet werden, spielt fuer die graphische Darstellung eine Rolle, nicht fuer die Navigation – im heutigen Sinne.

Solange man die Navigation naemlich durch ein Computerprogramm durchfuehren laesst, sind die Koordinaten fuer den Nutzer ziemlich egal. Hauptsache das Programm weiss mit den Koordinaten richtig umzugehen. Wenn es dann sagt, bei der naechsten Kreuzung links abbiegen, spielen Koordinaten in der Kommunikation zwischen Programm und Mensch keine Rolle. Das gilt genauso, wenn das Programm sagt, bitte den Kurs um 20 Grad aendern.

Wie fx99 geschrieben hat, spielen Koordinatentransformationen eine Rolle, wenn man einen Ausschnitt eines Rotationsellipsoiden (damit haben wir es ja wirklich zu tun, die Kugel ist nur eine Naeherung) auf ein Blatt Papier oder einen flachen Monitor abbilden will. Dann muss man Laenge und Breite (z.B. auf dem Referenzellipsoid WSG84) auf ein anderes Koordinatensystem abbilden.

Hier gibt es einen ganzen Zoo von verschiedenen Transformationen, denn bei der Abbildung von einem Ellipsoiden auf die Ebene geht immer irgendwas kaputt. Bei so einer Abbildung kann man ja fragen, ob sie laengentreu, winkeltreu oder flaechentreu ist. Keine der Koordinatentransformationen von einem Ellipsoiden auf eine Ebene kann in allen Faellen treu sein. Manche sind flaechentreu, manche winkeltreu, etc. Wie fx99 geschrieben hat, sind Merkatorprojektionen winkeltreu.

Vor ein paar hundert Jahren war Deine Frage sehr wohl korrekt, denn damals wurde mit Zirkel und Lineal auf einer Karte navigiert. Da hat dann eine winkeltreue Abbildung die (manuelle) Navigation in der Schifffahrt sehr erleichtert. Navigation und graphische Darstellung waren damals untrennbar verbunden – im Gegensatz zu heute.

Da Du eine Diplomarbeit schreibst: Wenn Du mehr theoretischen Unterbau zu Koordinatentransformationen brauchst: Es gibt da den sehr empfehlenswerten Klassiker “Map Projections – A Working Manual” von John P. Snyder, United States Government Printing Office, Washington, 1987. Wenn es Eure Bibliothek nicht hat, man kann die eingescannte PDF-Version legal im Internet finden: http://pubs.er.usgs.gov/usgspubs/pp/pp1395 In der Einleitung steht auch viel Geschichtliches, schoen zu lesen!

Korrektur:

Das eben zitierte Werk sagt auf Seite 4, dass Besondere an Merkatorprojektionen ist, dass Linien einer konstanten Richtung auf Geraden abgebildet werden!!! (Erst lesen, dann abschreiben…)

Nachtrag:

Die Merkator Projektion:

  • ist zylindrisch

  • ist konform (winkeltreu)

  • bildet Laengengrade auf aequidistante Geraden ab

  • bildet Breitengrade auf nicht aequidistante Geraden ab, die am Aequator den geringsten Abstand haben, und die die Bilder der Laengengrade im rechten Winkel schneiden

  • ist laengentreu entlang des Aequators oder entlang von zwei Breitengraden gleichweit vom Aequator entfernt

  • bildet Loxodrome http://de.wikipedia.org/wiki/Loxodrome auf Geraden ab

  • ist nicht perspektivisch

  • hat die Pole im Unendlichen, mit grossen Verzerrungen in den Polarregionen

  • wird in der Navigation verwendet

  • wurde vom Merkator 1569 vorgestellt

Damit verlaufen Segelrouten entlang von Loxodromen, werden von der Merkatorprojektion also auf Geraden abgebildet, wenn der Winkel des Schiffes nach Norden konstant ist. Dieser Kurs fuehrt i.d.R. nicht entlang der kuerzesten Verbindung (welche auf einer Kugel einem Grosskreis entsprechen wuerde).

Ich halte diese Frage in der heutigen Zeit fuer nicht ganz korrekt – oder zumindest fuer irrefuehrend. Welche Art von Koordinaten
verwendet werden, spielt fuer die graphische Darstellung eine Rolle, nicht fuer die Navigation – im heutigen Sinne.

Nach heutigen Sprachgebrauch (“ich hab ein Navi im Auto”) ist das sicher richtig, aber marvel meint wahrscheinlich eher das seefahrerische Navigieren (“ich bin in A und will nach B, welche Richtung muss ich mich bewegen und wie weit ist es”) , und hier
spielen die Koordinaten natürlich eine Rolle.

Generell kann gesagt werden, dass für die Abbildung der Erdkugel auf eine Ebene (“Flatscreen”) das Koordinatensystem eine wichtige Rolle spielt. Die globale Darstellung der OSM Daten (http://www.openstreetmap.org/) sehen sehr nach Mercator aus, aber wie das
bei kleineren Ausschnitten gemacht wird, weiß ich nicht.

Beim Berechnen der Merkator Koordinaten ist mir entgangen, dass die so berechneten Abstände total falsch sind, es muss wohl noch ein
ortsabhängiger Skalierungsfaktor eingebaut werden, wenn man halbwegs korrekte Abstände haben will.

Deshalb habe für die Daten “lineare” Koordianten berechnet: y=phi *R, und x=sin(phi)lamR (Winkel in Rad):

		                                                Merkator		          Linear	
                          phi	           λ	              y	             x	              y	            x

Stuttgart Fernsehturm 48.755751 9.190265 6233518.6 1023055.6 5427465.4 769241.6
Stuttgart Hbf 48.783868 9.182127 6238267.6 1022149.7 5430595.3 768560.5
Differenz 0.028117 -0.008138 4749.0 -905.9 3130.0 -681.5
3130.0 -681.2
Abstand(m) / Richtung(grad ab Nord) 4834.6 -10.8 3203.3 -12.3
R(m) 6378137

In den linearen Koordinaten sollte der Abstand ziemlich korrekt sein, der Winkel unterscheidet sich von dem
der Merkator Koordinaten, aber ob das für die Navigation mit einem Klenflugzeug von Bedeutung ist?

Also, wenn das auf der Seite http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames gesagte stimmt und ich mich nicht verrechnet habe, dann gilt folgendes:

Die Tiles von OSM in allen Zoom-Stufen muessen mit der Merkator-Abbildung einer Kugel errechnet werden.

Begruendung: Die auf der zitierten Seite angegebene Abbildung ist die Merkatorabbildung einer Kugel mit Radius 1, die dann noch etwas massiert wird (Skalierung um 1/Pi, Spiegeln der y-Achse, nochmal Skalieren mit 1/2 und verschieben um x = y = 1/2)). Letzteres ist jedoch nicht von Bedeutung. Diese Abbildung liefert zu gegebenem Punkt (Laenge, Breite) und gegebenem Zoomlevel nur dann immer die Kachel, die den Punkt enthaelt. wenn die Kacheln mit derselben Abbildung gerendert wurden. Ansonsten passt das ganze schon fuer recht kleine Breiten nicht mehr zusammen. (I.e. man bekommt eine Kachel, die den Punkt nicht enthaelt.)

Da die Winkel in der OSM-Datenbank sich auf den Rotationsellipsoiden WSG84 beziehen, muesste die Merkatorabbildung eines Ellipsoiden verwendet werden. Da aber die Abbildung einer Kugel verwendet wird, ergeben sich zwischen der “richtigen” Merkator-Abbildung des WSG84 und den OSM-Karten Abweichungen (Verzerrungen) in der y-Richtung. Faktisch werden die OSM-Karten daher mindestens einige der oben aufgezaehlten Eigenschaften der Merkator-Abbildung verletzen, z.B. die, dass Loxodrome des Ellipsoiden auf Geraden in der Karte abgebildet werden. Ich habe jetzt aber nicht abgeschaetzt, wie gross ein zu gegebenem Zoomlevel erstellter Kartenausschnitt sein muss, damit man die Abweichung von der Geraden “sieht”.

Viele Abbildungen können hier ausprobiert werden: http://www.btinternet.com/~se16/js/mapproj.htm

hallo und vielen dank für die vielen antworten.

ich habe mir nochmals die verschiedenen projektionsverfahren angeschaut, aber ich konnte leider immer noch keine genaue antwort darauf finden welche projektion am sinnvollsten für die entwicklung einer vektorbasierten karte für die luftnavigation wäre. bei der mercatorprojektion nimmt die flächenverzerrung mit der Entfernung vom Äquator zu, ob sich das negativ auf meine anwendung auswirken würde kann ich zu dieem zeitpunkt nicht sagen da mir einfach das wissen bzw die vorstellung fehlt. ein anderes projektionsverfahren namens Lambertsche Schnittkegelprojektion wäre auch eine alternative, da die bekannten luftfahrtkarten ICAO bereits auf diesem verfahren basieren. dennoch wäre mir eine eindeutige antwort lieber. vllt könnt ihr mir bei meiner entscheidung helfen.

mfg

marvel

Es ist immer gut, wenn man sich einem existierenden Standard anschließen kann. Das reduziert die Auswahl dann
auf zwei:
die gebräuchlichen OSM Renderer verwenden Mercator Kegelproj.,
Luftfahrtkarten ICAO Lambertsche Schnittkegelprojektion.
Von der Genauigkeit her sollten beide für die Anwendung ausreichend sein, was für Dich geschickter ist, musst Du selbst entscheiden und das ist sicher auch ein Teil der Diplom Arbeit ( btw: welches Fach?)

ich studiere angewandte informatik. ein direktes fach passend zu meiner diplomarbeit gibt es nicht, wenn dann würde der studiengang der geoinformatik als solcher gut für mein diplomthema passen. da mein studiengang sich speziell um die softwareentwicklung dreht muss ich mit allem klarkommen was entwickelt werden muss. darum war der einstieg in die thematik auch erstmal so steinern. kannte mich am anfang überhauot nicht mit den ganzen geograpischen sachlichkeiten aus, doch ihr habt licht ins dunkeln gebracht. danke nochmals für eure hilfe und einen guten rutsch ins neue jahr…

mfg

marvel

Hallo, fx99
Leider stimmen deine Ausführungen nur zum teil.
di x(m) Angaben ist keine Entfernung zum Nullmeridian sondern zum Mittelmeridian.
Unterschied ist darin:
Nullmeridian läuft durch Greewich durch.
Mittelmeridian Ist ein Meridian der durch die Mitte jedes Zonenfeldes durchläuft.
z.B durch Zonenfeld 32U oder 33U und so weiter.
Darüberhinaus sehe ich ein Fehler in der Darstellung deiner UTM-Koordinaten- es wird zuerst der OSt/West-Wert eingetragen und erst dann der Süd/Nord-Wert
Der Ost/West-Wert ist daran zu erkennen, dass er grundsätzlich um eine Stelle vor dem Koma kürzer ist.
Ich gehe davon aus, dass die von Dir bereitgestellten Koordinaten fiktiv sind. Weil die für mich keinen Sinn ergeben.

Oder habe ich was übersehen? und mich gerade absolut blamiert?

Hallo,
ich gebe zu, ich bin kein Spezialist für geodätische Fragen. Ich bin die gestellte Frage unbefangen mit meinem mathematischen Background
angegangen. Bei den Berechnungen kann mir natürlich auch ein Fehler unterlaufen sein.
Die angegebenen Koordinaten entsprechen der Realitaet:
phi=lat=48.75591, λ=lon=9.1907 ist abgeschätzt die Position des Stuttgarter Fernsehturmes.
Die Koordinaten sind keine UTM Koordinaten, dass wie in der Überschrift angezeigt, y (Süd/Nord-Wert) vor x (Ost/West-Wert) auftaucht, liegt
einfach daran, dass die OSM Winkel in der Reihenfolge phi=lat dann λ=lon dargestellt sind.

Ob x ab Nullmeridian (Greenwich) oder ab irgend einen anderen Meridian gerechnet wird, ist reine Vereinbarungssache, ich hab hier Greenwich
genommen. Bei der Mercator Projektion ist der Abstand der Meridiane nach Norden konstant, also 111km / grad. Damit erscheint x=1022149.7
ziemlich plausibel.
49 grad Nord entspricht einem Abstand auf der Kugeloberfläche vom Äquator von ca. 5500km. Da die Mercator Projektion diese Dimension deutlich vergrößert, scheinen mir die 6233.5186 km ebenfalls plausibel.

sorry fx99,

Das war mein gefährliches Halbwiessen.
Mir war nicht bewusst, es es neben Universalen Transversalen Mercator-Projektion (UTM) noch die Mercator Projektion gibt. Hast absolit recht gehabt in Deinen berechnungen.

Gruß
Sparkman

Hallo,

zur Ergänzung sei Quantum Gis empfohlen, das kann sämtliche Koordinatensysteme der Erde verarbeiten.

Das Koordinatenbezugssystem WGS 84 /World Mercator (EPSG 3395) passt ganz gut zu den OSM-Tiles.

Mittelerweile kann ich somit offline vorhandene OSM-Tiles in dem Programm nutzen. Man muß nur zu jedem Tile ein Worlfdfile xyz.wld erstellen und in das gleiche Verzeichnis platzieren wie die png.

Die Werte in dem Worldfile lassen sich aus Zoomstufe, Ordnername und Filename berechnen. Bei Zoomstufe 15 hat man zwar einige Dateien zu erstellen, aber das lässt sich programmieren.

Gruß,
ajoessen