Archive for the ‘Quantum GIS’ Category

OSM-Daten in PostGIS und QGIS – Nachtrag

Juli 16, 2010

Im ersten Artikel OSM-Daten in PostGIS und QGIS habe ich beschrieben, wie man OSM-Daten via osm2pgsql in eine PostGIS-Datenbank importiert und mit QGIS darstellen kann. Dabei habe ich darauf hingewiesen, dass der Import in Postgis auch mit OSMOSIS geschehen kann. Leider habe ich das zu diesem Zeitpunkt noch nicht genauer beschreiben können. Mittlerweile habe ich das aber ausprobiert und bin recht schnell auf die Unterschiede aufmerksam geworden. (more…)

Advertisements

OSM-Daten in PostGIS und QGIS

Juni 8, 2010

Ich hatte schon länger die Idee, die mittlerweile recht gut erfassten Daten aus OpenStreetMap (OSM) in eine Datenbank laufen zu lassen und dann gezielt Objekte zu ermitteln. Diese könnte ich dann z. B. in eine Tabelle füllen und zu Vetriebszwecke in unserem Unternehmen nutzen. (more…)

QGIS (III)

April 14, 2010

Ich habe heute festgestellt, dass ich hier in meinem Blog tatsächlich eine ganze Reihe Versionsnummern unterschlagen habe. Seit meinem letzten Bericht über QGIS ist die Software mittlerweile bei Version 1.4.0 (war  0.8.1) angekommen. (more…)

QGIS (II)

Juli 24, 2007

Seit einiger Zeit ist auf der Seite der Programmierer ein neuer Release von QGIS zu bekommen (www.qgis.org) — nämlich die Version 0.8.1. Das ich das überhaupt ausdrücklich erwähne liegt daran, dass ich letztens versucht habe, einen WMS-Dienst (Kartenserver im Internet) anzubinden. Da ich selbst noch eine Version 0.7 im Einsatz hatte, suchte ich den Dateityp im „Öffnen“-Dialog vergeblich.

Ein Blick auf die Homepage von QGIS brachte die Lösung meines Problems. Ab der Version 0.8 wird das Einbinden eines WMS-Layers unterstützt und funktioniert sehr gut. Einige freie WMS-Server sind unter folgender Adresse im Internet zu finden: http://www.skylab-mobilesystems.com/ger/wms_serverlist.html. Zum Ausprobieren sollte einigs dabei sein.

QGIS (I)

Juli 28, 2006

QGIS (Quantum GIS) ist, wie erwähnt, ein freies GIS. Es ist eine Qt/C++ Anwendung (Anm.: und keine Java-Anwendung, wie ich zuvor behauptete. Dank nochmal an hotti! Geändert am 04.04.2007) und ist damit in jedem Betriebssystem einsetzbar, für das Qt verfügbar ist. Ob das auch für alle PlugIns gilt, kann ich nicht mit Sicherheit sagen. Ich setzte QGIS unter Linux und unter Windows ein. Von der Herstellerseite (s. o.) lässt sich QGIS kostenlose herunterladen. Hier findet man auch die englische Dokumentation und die üblichen Foren, in denen man weitere Hilfe bekommen kann.

Die Installation läuft auf einem Windows-PC problemlos und schon nach wenigen Minuten kann man mit seinem ersten Projekt starten. Idealerweise hat man schon ein oder mehrere Shape-Files von den eigenen Daten. Wenn nicht, kann man sich eine Beispieldatei aus dem Internet besorgen. Googeln hilft! :-) Danach, würde ich vorschlagen, „spielt“ man erstmal mit dem System herum, um sich mit den Funktionen und der Oberfläche vertraut zu machen.
Die Oberfläche der Version 0.7.4 ‚Seamus‘ ist auf deutsch verfügbar und stellt den Anwender vor keine großen Probleme sich zurechtzufinden. Eine deutsche Übersetzung der Anleitungen (Install-/User-Guide) wird für die Version 0.8 verfügbar sein. Für eine ausführliche Übersicht aller Funktionen sollte eine der Anleitungen herangezogen werden. Ich werde hier möglicherweise einen eingeschränkten Blick auf die Software haben, da ich nicht alle Funktionen benötige und dies kein Produkttest ist. ;-)

Ich lege, gemäß meiner Gewohnheit, erstmal ein zunächst leeres Projekt an. Dann öffne ich ein paar Shape-Files mit Straßen, Gebäuden und Flüssen. Diese werden vom System mit einer zufälligen Farbe angezeigt. Die lässt sich aber ändern und wird dann in der Projektdatei festgehalten. Sollen mehrere Leute auf dasselbe Projekt zugreifen, kann man die Projektdatei schreibgeschützt in einem allgemein zugänglichen Verzeichnis im Netzwerk ablegen. Ohne das Änderungen an den Einstellungen möglich sind, kann dann jeder mit dieser Datei arbeiten. Sind Änderungen an den Einstellungen in QGIS gewünscht, muss man sich über Alternativen unterhalten. So hat nur der Administrator die Möglichkeit neue Layer dauerhaft hinzuzufügen oder diese komplett aus dem Projekt zu entfernen.

Nach einiger Zeit reizt es mich doch zu sehr, die Datenbankanbindung zu testen. Aber wo krieg ich jetzt eine Tabelle für die Datenbank her? Nichts leichter als das! :-)
QGIS bietet eine Importschnittstelle für Shapefiles in eine PostGIS-Datenbank als Standard-PlugIn. Da hat doch mal einer mitgedacht. Gesagt, getan, habe ich meine drei Shapefiles in die Liste der zu importierenden Dateien eingefügt. In sehr kurzer Zeit sind die Daten eingelesen und stehen ab sofort unter PostgreSQL/PostGIS zur Verfügung.

Der Vorteil liegt auf der Hand: ich benutze jetzt die Daten, um Sie in QGIS anzuzeigen und evtl. auch geometrisch zu verändern. Möglicherweise sind in der Datenbank aber noch Tabellen abgelegt, die einen Bezug zu meinen Objekten haben — idealerweise über eine Art ID. Damit kann ich diese Daten ebenfalls heranziehen oder andere können — bei Kenntnis der SQL-Syntax — ihre Sachdaten in einen räumlichen Bezug setzen, ohne dafür QGIS zu benutzen.

Ein Beispiel:
Ich habe eine Tabelle mit den geografischen Informationen zu Gebäuden. Da diese Tabelle möglichst weit normalisiert — man könnte auch sagen: vereinfacht — ist, enthält sie keinerlei weitere Informationen als die Geometrie und eine eindeutige ID. Diese ID kommt ursprünglich aus einer Tabelle mit Sachdaten zu den Gebäuden. Ohne es bisher selbst getestet zu haben, soll man jetzt in PostgreSQL eine entsprechende Abfrage für einen View (eine Art dynamische Tabelle, basierend auf einer SQL-Abfrage) erzeugen können, der die Sachdaten mit den Geometriedaten auf Grund der ID verbindet. Wenn man jetzt den View zur Anzeige der Gebäude benutzt, müssten theoretisch beim Öffnen der Attributtabelle auch die Sachdaten angezeigt werden.
Auf der anderen Seite möchte ich einfach nur die Information haben, welche weiteren Objekte oder POI (Points Of Interest = interessante Ort, d. h. georeferenzierte öffentliche Einrichtungen, Geschäfte, Parks etc.) im Umkreis von z. B. 500m um mein Objekt herum zu finden sind. Da ich eine solche Tabelle in meiner Datenbank abgelegt habe, kann ich jetzt über eine geometerische SQL-Abfrage diese Objekte ermitteln und in einer Liste ausgeben lassen. Ich denke, man kann die Abfrage sicher noch so erweitern, dass man die Entfernung (Luftlinie) mit ausgeben kann. Wenn man jetzt in einer Tabellenkalkulation die Liste mit einer entsprechenden Funktion um eine Spalte erweitert, kann man sich beispielsweise diese Entfernung als Zeit für einen „Fussmarsch“ ausgeben lassen.

Möglichkeiten ohne Ende, wenn man erstmal die Tragweite solcher Informationen erkannt hat. Ich werde später weitere Ausführungen zum Umgang mit QGIS, PostGIS und PostgreSQL machen … versprochen! :-)

ca. 6:30 min / 4,5 Mb