KML vs GPX
KML und GPX sind zwei wichtige Formate wenn es darum geht GPS-Daten, Tracks oder Routen auszutauschen. Praktisch jedes moderne Navi-Programm kann mindestens eines davon bearbeiten. Beide Formate basieren auf einer XML-Grundstruktur im ASCII/Text-Format die leicht lessbar und auswertbar ist. Die Elementnamen und die Syntak sind unterschiedlich, aber die wesentlichen Koordinatenangaben sind in beiden enthalten.
KML
Die drei Buchstaben stehen für Keyhole Markup Language. Es ist ein Format zur Darstellung
geographischer Daten und wird hauptsächlich von Google Maps und Google Earth verwendet. In komprimierter ZIP-Form
wird die Bezeichnung in KMZ geändert.
Neben den eigentlichen Koordinaten-Informationen kann es auch umfangreiche Geometrien beschreiben die in der
Kartographie benötigt werden. Für die Darstellung von Routen und das Navigieren sind diese Optionen ziemlich nutzlos.
Weitergehende, umfassende Erläuterung des KML-Dateiformats gibt es z.B. bei
ArcGIS
oder
OpenGeospatialConsortium
oder bei
Wikipedia.
Für die Navigation sind 2 Elemente besonders wichtig, bzw. ausreichend:
- POINT, beschreibt einzelne, wichtige Wegpunkte
- LINESTRING, ein Track, bestehend aus einer Kette von Punkten (coordinates) die durch Linien verbunden sind
Koordinatenangaben im KML sind immer in der folgenden Notation anzugeben: <Longitude>, <Latitude>, <Elevation>
Eine beispielhafte, minimale und spezifikationsgerechte Datei ist die folgende:
<?xml version="1.0" encoding="UTF-8"?> # notwendiger Header
<kml xmlns="http://www.opengis.net/kml/2.2"> # notwendiger Header
<Document>
<Folder>
<Placemark> # Anfang des ersten Elements
<name>Punkt 1</name> # Name
<Point> # Typ POINT
<coordinates>
6.6417866,25.842897,0 # Koordinaten
</coordinates>
</Point>
</Placemark> # Ende des Elements
<Placemark> # Begin des nächsten Elements
<name>Route von Punkt 1 nach Punkt 1</name> # Name
<LineString> # Typ LINESTRING (=Track)
<coordinates>
6.64181,25.8429,0 # Liste von Koordinatenpunkten
6.642,25.84166,0
..
6.64181,25.8429,0
</coordinates>
</LineString>
</Placemark> # Ende des Elements
</Folder>
</Document>
</kml>
GPX
Die drei Buchstaben stehen für GPS EXchange Format. Es ist ein sehr populäres Format der
Firma TopoGrafix. Die Spezifikation ist auf der TopoGrafix-Webseite zu
finden. GPX hat sich zum Quasi-Standard für den Austausch von GPS-Daten und Routen entwickelt.
Für die Navigation sind 2 Elemente besonders wichtig, bzw. ausreichend:
- WAYPOINT, (wpt) beschreibt einzelne, wichtige Wegpunkte
- TRACK, (trk) ein Track, bestehend aus einer Kette von Punkten (trkpt) die durch Linien verbunden sind
Die Spezifikation ist sehr strikt und verlangt dass WAYPOINTS und TRACKS in genau dieser Reihenfolge aufgelistet
werden und nicht gemischt.
Koordinatenangaben im GPX sind immer in der folgenden Notation anzugeben (Beispiel Trackpoint):
<trkpt lat="Latitude" lon="Longitude"> <ele>Elevation" </ele> </trkpt>
(Die Reihenfolge der Auflistung der Latitude/Longitude-Werte ist damit verdreht gegenüber KML)
Eine beispielhafte, minimale und spezifikationsgerechte Datei ist die folgende:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?> # notwendiger Header
<gpx xmlns="http://www.topografix.com/GPX/1/1" creator="byConversion" version="1.1" # notwendiger Header
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" # notwendiger Header
xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd"> # notwendiger Header
<metadata>
<name>NAME</name>
</metadata>
<wpt lat="25.842897" lon="6.6417866"> <ele>0</ele> <name>Punkt 1</name> </wpt> # Typ WAYPOINT
<trk> # Typ TRACK
<name>Route von Punkt 1 nach Punkt 2</name> # Name des Tracks
<trkseg>
<trkpt lat="25.8429" lon="6.64181"> <ele>0</ele> </trkpt> # Liste von Koordinatenpunkten
<trkpt lat="25.84166" lon="6.642"> <ele>0</ele> </trkpt>
..
<trkpt lat="25.8429" lon="6.64181"> <ele>0</ele> </trkpt>
</trkseg>
</trk>
</gpx>
Konvertierungen
Zur Konvertierung gibt es beliebig viele online und offline Konverter. Beide Dateiformate sind einfach
lessbare ASCII-Textdateien und eine Bearbeitung ist auch mit jedem Texteditor leicht möglich.
Wenn man nur die Koordianten zur Verfügung hat dann kann man sich mit einem "Excel" die Textbausteine zusammenbauen.
Wie bereits erwähnt sollte man daran denken dass die Lon/Lat Reihenfolge bei GPX umgedreht ist gegenüber KML.
Komplizierter wird der Formataufbau wenn zusätzlich die den Punkten zugeordneten Formatierungen oder Symbole
übertragen werden sollen. Auch weil die Darstellung nicht bei allen Anzeigeprogrammen identisch interpretiert
wird.
Links
GPSVisualizer https://www.gpsvisualizer.com/
MyGeodata Converter https://mygeodata.cloud/converter/kmz-to-gpx
GPX Editor, zum Editieren und Umwandeln von Tracks.