Eigene GIS-Fachapplikationen mit QGIS 2 erstellen

Aus Geoinformation HSR
Wechseln zu: Navigation, Suche

Am Beispiel der Zonenplanung zeigt diese Anleitung, wie eine GIS-Fachapplikation in QGIS erstellt werden kann.


Voraussetzungen

  • Betriebssystem: Jedes, das von QGIS unterstützt wird. Es sind keine OS-Admin-Rechte nötig, der Datenbankbenutzer musss jedoch Schreibrechte haben und Tabellen anlegen können.
  • QGIS mindestens 2.8 installiert
  • PostgreSQL/PostGIS installiert
  • QGIS Interlis-Plugin

PostgreSQL und PostGIS installieren

Die PostgreSQL Distribution von EterpriseDB enthält pgAdmin, ein benutzerfreundliches PostgreSQL Administrationstool. Ebenfalls ist dabei der "Application Stack Builder" enthalten, mit dem Sie PostGIS installieren können. Bei der Anleitung wird vorausgesetzt, dass pgAdmin benutzt wird. Stellen Sie sicher, dass sie im Installationsprozess PostGIS installiert wird (Unter Spatial Extensions im Stack Builder).

http://www.enterprisedb.com/products-services-training/pgdownload

Sie können PostgreSQL und PostGIS auch als alleinstehende Software unter folgenden URLs herunterladen:

http://www.postgresql.org/download/ http://postgis.refractions.net/download/

QGIS-Plugins installieren und konfigurieren

1. Daten vorbereiten

  • Für die Durchführung dieser Anleitung braucht es eine bereits bestehende PostgreSQL Datenbank.
    • Erstellen Sie diese mit dem Namen "zplnaenikon" (Nach verbinden zur Datenbank: Rechtsklick auf "Datenbanken" > neue "Datenbank")
    • Die Postgis Erweiterung zur Datenbank hinzufügen (Erstellte Datenbank aufklappen > Rechtsklick auf "Extensions" > "Neue Extension" > Name: postgis)*
  • Folgende Daten finden sie in einer ZIP Datei auf dem wiki:
    • INTERLIS-Modell: Definiert das Datenbank-Schema und enthält verschiedene Enumerationen
    • CSV-Tabellen: Aufzählung von Zonentypen und Eigenschaften
    • DXF-Datei: Enthält Beispiel-Zonen
    • Zonenplan-Legende: Legt die Einfärbung einer Zone fest
    • LINK ZUM WIKI
  • Unter Werkzeuge für Interlis finden Sie der Download zu der ZIP Datei, in dem sich eine Datei mit dem Namen "ili2c.jar" befindet. Entpacken Sie diese Datei in einen Ordner wo Sie sie wiederfinden. Die anderen Dateien in diesem ZIP werden nicht benötigt.

2. QGIS-Projekt einrichten

  • Starten Sie QGIS. Falls bereits ein Projekt vorhanden ist erstellen Sie ein neues unter "Projekt" > "Neu".
  • Für das importieren von Interlis Daten in QGIS wird eine Erweiterung benötigt. Diese können Sie unter "Erweiterungen" > "Erweiterungen verwalten und installieren" > Suche nach "Interlis".
  • Fügen Sie einen WMS-Layer als Hintergrund ein unter "Layer" > "Layer Hinzufügen" > "WMS/WMTS-Layer hinzufügen..."
    • Klicken Sie in diesem Fenster auf "Neu" um eine WMS Verbindung herzustellen.
    • Nennen Sie die Verbindung "av_uster" und geben Sie folgende URL im Feld "URL" an: http://webgis.uster.ch/wms/av/grundplan_av
    • Drücken Sie auf "OK". Wählen Sie die soeben erstellte Verbindung oben im Aufklappmenü und drücken Sie auf "Verbinden".
    • Wählen Sie das Feld "Übersicht Vektor25" und klicken Sie auf "Hinzufügen".
  • Stellen Sie unter "Layer" > "Layer Hinzufügen" > "PostGIS-Layer hinzufügen" eine PostGIS Verbindung her.
    • Drücken Sie auf "Neu" um die Verbindung zu erzeugen. Fügen Sie folgende Daten in die Felder ein:
      • Name: zplnaenikon
      • Host: localhost
      • Datenbank: zplnaenikon
      • Benutzername und Passwort wie von ihnen eingestellt
      • Kreuzen Sie die Felder "Benutzernamen speichern" und "Passwort speichern" an. Sonst kann die Interlis Erweiterung die Verbindung nicht herstellen
    • Testen Sie die Verbindung mit "Verbindung Testen"
    • Ist die Verbindung erfolgreich können Sie den Vorgang mit "OK" beenden und das Fenster schliessen.
  • Speichern Sie das Projekt mit dem Namen "zonenplanung" unter "Projekt" > "Speichern" an einem beliebigen Ort.
  • Schliessen Sie QGIS und öffnen Sie das Projekt, indem Sie auf die soeben erstellte Projektdatei doppelklicken. Der neustart ist notwendig, da die Interlis Erweiterung sonst die neu erstellte Verbindung nicht erkennt.
  • Als nächstes soll das Interlis Datenmodell in die Datenbank importiert werden.
    • Starten Sie die Interlis Erweiterung indem Sie auf dieses Icon klicken: Interlis (Ist dieses Icon nicht im Menu Sichtbar, ist die Erweiterung nicht installiert oder aktiviert)
    • Geben Sie im Feld "IlisMeta Modell" den Pfad zur .imd Datei, die in den heruntergeladenen Untrelagen unter "Unterlagen/INTERLIS/NP_73_CH_de_ili2.imd" abgelegt ist
    • Wählen sie "zplnaenikon" als Speicherort.
    • Klicken Sie auf "DB-Tabellen anlegen" und danach auf "Enums importieren".
    • Die Tabellen sollten jetzt importiert sein. Sie können das Plugin schliessen.
  • Als nächstes müssen Sie die enumerationen zur Karte hinzufügen.
    • Erstellen Sie dafür eine Gruppe, indem Sie in der Layerübersicht in einer freien Fläche rechtsklicken und "Gruppe hinzufügen wählen". Nenne Sie diese "Enumerations".
    • Wählen sie die erstelle Gruppe an.
    • Verbinden Sie sich unter "Layer" < "PostGIS-Layer hinzufügen" mit der Datenbank.
    • Wählen Sie "Auch geometrielose Tabelle anzeigen" an.
    • Klappen Sie "Public" auf
    • Wählen Sie alle Tabellen, die mit "enum" beginnen an und fügen Sie diese mit "Hinzufügen" in der Karte hinzu.
    • Die Gruppen können zugeklappt werdem.
  • Fügen Sie nun auf die selbe Weise die Tabellen "n7_grundnutzung_zonenflaeche", "nutzungsplanung_nutzungsplanung_grundnutzung_zonentyp" und "nutzungsplanung_nutzungsplanung_grundnutzung_zonentyp_kt" ohne angewähle Gruppierung ein.
Ihre Layerübersicht sollte nun etwa so aussehen

3. Daten erfassen

  • PLATZHALTER FÜR DATENIMPORT
  • Bevor Sie anfangen können zu zeichnen müssen die Felder vom Layer, idem Sie zeichnen wollen, richtig konfiguriert werden.
    • Öffnen Sie die Einstellungen der Layerfelder: Rechtsklick auf "n7_grundnutzung_zonenflaeche" > "Eigenschaften" > "Felder".
    • Um folgende Einstellungen vorzunehmen muss jeweils die Einstellung für das Bearbeitungselement geöffnet werden, indem man auf das dazugehörige Feld klickt. (Sollten momentan alle auf "Texteditor" eingestellt sein)
      • Stellen Sie in der Zeile mit den Namen "ogc_fid" und "tid" das Bearbeitungselement auf "Versteckt".
      • Stellen Sie in der Zeile mit dem Namen "herkunft" das Bearbeitungselement auf "Wertbeziehung", dort "Layer" auf "enum22_herkunft", "Schlüsselspalte" auf "enum" und "Wertspalte" auf "enumtxt".
      • Dasselbe gilt für die Zeile mit dem Namen "qualitaet", nur sollte "Layer" auf "enum22_qualitaet" gestellt werden.
      • Bei "zonentyp_1" stellen Sie das Bearbeitungselement auf "Wertbeziehung", dort dort "Layer" auf "nutzungsplanung_nutzungsplanund_grundnutzung_zonentyü", "Schlüsselspalte" auf "identifikator" und "Wertspalte" auf "abkuerzung".
    • Sie können die Eintellungen jetzt mit "OK" verlassen.
  • Nun können Sie beginnen Zonen zu zeichnen:
    • Zoomen Sie ins Gebiet der Gemeinde "Nänikon". Ist die eingefügte WMS Karte nicht sichtbar zoomen Sie mit Rechtsklick auf "Übersicht Vektor25" > "Auf den Layer zoomen" auf den Layer.
    • Wählen Sie nun den Layer "n7_grundnutzung_zonenflaeche" an. Mit Rechtsklick auf diesen schalten Sie Bearbeitungsmodus an.
    • Klicken Sie auf folgendes Icon um das Zeichnen eines Objektes zu starten: Objekt Hinzufügen
    • Jetzt können Sie ein Polygon zeichnen. Mit klick auf die Karte markieren Sie Eckpunkte. Linksklick beendet den Vorgang (mindestens 3 Punkte müssen gesetzt werden).
    • Nach Beendung des Zeichnens öffnet sich ein Fenster für die Eingabe von Attributen. Hier können Sie beliebige werte wählen.
    • Das Aktivieren der Fangoption unter "Eintellungen" > "Fangoptionen" vereinfacht das editieren von angrenzenden Gebieten. Wählen Sie bei "Fang auf" "Zu Stützpunkt und Segment". Das ankreuzen von "Topologische Bearbeitung an" schaltet die automatische Anpassung von gemeinsamen Zonengrenzen beim verschieben eines Stützpunktes an.
    • Fügen Sie auf die selbe Weise noch ein Polygon ein, dass das andere Polygon überschneidet.
    • Wie Sie sehen wurde die Überlappung automatisch entfernt.
    • Mit Klick auf dieses Icon Objekt wählen aktivieren Sie den Auswahlmodus. In diesem können Sie die soeben erstellte Objekte anwählen.
Die Attributtabelle nachdem Daten eingefügt wurden
  • Fügen Sie nun die in den Unterlagen beigelegte DXF Datei mit "Layer" > "Layer hinzufügen" > "Vektorlayer hinzufügen" zur Karte hinzu. (Unterlagen/DXF/naenikon.dxf)
  • Nennen Sie diesen Layer "naenikon" und ziehen Sie diesen unter den Layer "n7_grundnutzung_zonenflaeche"

4. Ergebnis exportieren

Kontakt

  • Stefan Keller: sfkeller(at)hsr.ch
  • Pirmin Kalberer: pka(at)sourcepole.ch