Schedule - PGConf.DE 2011

PostGIS im Einsatz für FlightGear-Scenery

Date: 2011-11-11
Time: 13:00–13:45
Room: Raum 3

Ein Flugsimulator, in dem man mittels eines geübten Blicks aus dem Fenster navigieren kann, braucht eine qualifizierte Gelände-Darstellung. Für eine einzelne Region mit moderaten Ausmaßen kann man das Terrain mittels passender Software noch manuell modellieren, aber wenn die globale Abdeckung das Ziel ist, führt kein Weg daran vorbei, geeignete Rohdaten unter Verwendung eines automatisierten Mechanismus in die für den Simulator passende Form zu gießen.

Genau dies ist der Inhalt einer Initiative im Rahmen des OpenSource-Projektes, welches sich mit der Entwicklung des Flugsimulators „FlightGear“ befasst. Naturgemäß sind die Datensätze, die kostenfrei erhältlich und kompatibel mit der GPL sind, nicht die genauesten. Das führte bisweilen dazu, daß, um ein plakatives Beispiel zu nennen, Flüsse mitten über irgendwelche Hügel flossen. Etwa im Jahr 2004 entbrannte daraus unter FlightGear-Entwicklern eine Diskussion darum, ob denn nun der Hügel an der falschen Stelle stünde oder der Fluß falsch verliefe - ein Diskurs, der ohne konkrete Anhaltspunkte verständlicherweise zu keinem Ergebnis führte. Aus dieser Not gebar die Idee, die fraglichen Geodaten für alle Beteiligten zu visualisieren. Mein Mittel zum Zweck war eine Datenbank mit PostgreSQL und PostGIS, um den Haufen an Vektordaten in vereinheitlichter Form zu speichern. Zur Rendern wurde ein MapServer vorgeschaltet, der Punkte, Linien und Polygone aus den Bodennutzungsdaten dergestalt aufbereitet, daß man sie sich in einem Browser angucken kann. Soweit die Pflicht. Die Kür besteht darin, eine Infrastruktur zu schaffen, die es erlaubt, die Daten unter Mitwirkung möglichst vieler Beteiligter zu verbessern. Dazu kann man im OpenSource-Ökosystem inzwischen auf einen beachtlichen Werkzeugkasten zur Bearbeitung und Übersetzung von Geodaten zurückgreifen. Vor allem aber der Einsatz von PostgreSQL mit PostGIS als Datenspeicher erscheint rückblickend als die einzig richtige Entscheidung, denn das System erlaubt nicht einfach nur die Speicherung geographischer Koordinaten-Sätze und eine geographische Suche danach, vielmehr sind mit PostGIS auch geometrische Operationen wie etwa das Verschneiden von Polygonen möglich, ohne daß dabei auch nur ein beteiligtes Objekt die Datenbank verlassen müsste. Auf diese Weise kann man mit etwas Scripten auch Daten aus fremden Quellen in den vorhandenen Basis-Datensatz quasi nahtlos „einkleben“. Neben dem MapServer gibt es inzwischen einen recht bunten Strauß von Werkzeugen, die Geodaten in Kacheln für den Browser rendern können. Ein weiteres, ebenfalls populäres Mitglied der OpenSource-Familie ist hier sicherlich der Mapnik, welcher der Entwicklung von OpenStreetMap entsprungen ist und seit einiger Zeit auch mit Datenformaten außerhalb von OSM umsetzen kann. Hier kommen uns ein paar Standards zugute, die dazu führen, daß ich meine Karte aus vom MapServer gerenderten Bodennutzungsdaten mit aeronautischen Symbolen überlagern kann, die unter Verwendung eines Mapnik bereitgestellt werden. So eine Darstellung im Browser wird üblicherweise in sogenannten Layern organisiert - was man hübsch und anschaulich vorführen und mit Screenshots aus dem FlightGear vergleichen kann.

Speaker

Martin Spott