Top Banner
Webgis mit QGIS und GeoExt Neues vom QGIS server Marco Hugentobler, Andreas Neumann
20

Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Jun 04, 2019

Download

Documents

dinh_dan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Webgis mit QGIS und GeoExt

Neues vom QGIS server

Marco Hugentobler, Andreas Neumann

Page 2: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Inhalt

QGIS serverWieso noch ein WMS Server? EntstehungsgeschichteFunktionsweiseSystemanforderungen Implementierte Funktionen

ClientArchitekturFunktionalitätDemo Integration mit QGIS server

Ausblick

Page 3: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Wieso noch ein WMS Server?

Gleiche Konfiguration wie in QGIS DesktopGleiches Rendering und AussehenSchnelleres Publizieren eines Projektes, da keine Umwandlung in anderes ServerformatÜbernahme von Einstellungen

LayergruppenSensitivität für AttributabfragenAusblenden von AttributenAliase für AttributeEbenensichtbarkeit

Übernahme der DrucklayoutsFortgeschrittene KartensymbolisierungFortgeschrittene Beschriftung

Page 4: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Entstehungsgeschichte

2006: Beginn im Rahmen des EU-Projekts 'Orchestra' am Institut für Kartografie, ETH Zürich2008: Weiterentwicklung im Rahmen des EU-Projektes 'SANY'2010: QGIS Projektfile als Konfiguration, Entwicklung für die Stadt Uster.2010: Integration des Codes in das QGIS svn2011: Druckfunktionalität, Konfigurationsdialog, diverse andere Verbesserungen

Page 5: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Funktionsweise

WMS kompatibler Kartenserver (Version 1.3)FastCGI Applikation in C++Benutzt die QGIS Kernbibliothek (libqgis_core.so) zum Rendern der KarteKonfiguration über das QGIS Projektfile (.qgs) oder SLDKonfigurationsdialog für WMS Servereinstellungen in QGIS Desktop

Page 6: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Konfigurationsdialog QGIS Desktop

Page 7: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Systemanforderungen

Webserver (Apache)FCGI-ModulQGIS-Abhängigkeiten (e.g. geos, proj, gdal/ogr, etc.)QGIS-Server FCGI

cmake Compile Parameter mit Beispielen:

FCGI_INCLUDE_DIR: /usr/includeFCGI_LIBRARY: /usr/lib/libfcgi.soWITH_MAPSERVER: ONQGIS_CGIBIN_SUBDIR: /home/www/cgi (advanced option)

Page 8: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Implementierte Funktionen

WMS 1.3 FunktionalitätGetCapabilitiesGetMapGetFeatureInfoGetLegendGraphic

ErweiterungenGetPrintOptional WKT-Geometrie im GetFeatureInfoDPI Parameter

Page 9: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

GetPrint - GetCapabilities

<Capability>...<ComposerTemplates xsi:type="wms:_ExtendedCapabilities"> <ComposerTemplate width="297" height="210" name="A4-Hoch"> <ComposerMap width="231" height="125" name="map0"/> <ComposerLabel name="kartentitel"/> </ComposerTemplate></ComposerTemplates>...</Capability>

Page 10: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

GetPrint - Kommando

http://myserver.com/qgis_mapserv.fcgi?SERVICE=WMS&REQUEST=GetPrint&TEMPLATE=A4-Hoch&DPI=300&kartentitel=Mein%20Zuhause&map0:Extent=696055.2,245996.2,696152.7,246122.7&map0:rotation=-45&map0:scale=500

Page 11: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Konfigurationstips

Eindeutige Gruppen- und Ebenennamen verwenden!Anzahl der verfügbaren Koordinatensysteme einschränken auf die wichtigsten!Haken "WKT-Geometrie in Objektinformationen einschliessen" ermöglicht Highlighting der Geometrien, stellt aber Original-Geometrie zur Verfügung!

Page 12: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

QGIS Webclient

Einfach zu bedienender Webgis-ClientBasierend auf WMS-Protokoll mit ErweiterungenÜbernimmt möglichst viele Konfigurationen vom QGIS-Projektfile über WMS-KommandosSehr einfach zu konfigurieren:

URL-Parameterglobale Einstellungen

Im QGIS svn:http://svn.osgeo.org/qgis/trunk/qgis_webclientProjektverwaltung mit XML-DateienProjektlisting mit XSLT

Beispiele: http://gis.uster.ch/

Page 13: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Funktionalitäten

Anzeige der Karte und NavigationEbenenbaum (ein- und ausschalten)Attributanzeige

Mouseover: TooltipClick: Alle Attribute im Baum dargestelltSensitivität:

Oberster TrefferAlle EbenenAktuelle Ebene oder Gruppe

Anzeige LegendeGeographische SucheAusdrucken unter Nutzung der QGIS LayoutsMessen

Page 14: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Architektur

Page 15: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Drucken

alle Layouts des QGIS-Projekts werden exponiertAuswahl von

LayoutMassstabDPIRotation

Interaktives Rotieren, Verschieben, Skalieren (GeoExt)Ausgabe nach PDF

Page 16: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Drucken

Page 17: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Suche

Globale und projekt-spezifische Suche Python WSGI Script am ServerKommunikation über XMLHttpRequest/JSONFixe Tabellenstruktur für Suche (global und Projekt)2-stufige Suche:

Resultatliste geordnet Definitives Resultat vektoriell über WKT hervorgehoben

Page 18: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Ausblick - QGIS Server

Kurzfristig Attributfilter beim GetMap und GetPrint KommandoCaching:

gezieltes Neuladen einzelner ProjekteCaching von GetCapabilities Requests

Suche:Suche über Attribute in Ebenen des QGIS-Projekts

GetMetadata (Projekt und LayerEbenentransparenz

Später:

Drucken von Redlining-ObjektenProfilextraktionWebgestütztes Editieren?

Page 19: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Ausblick - QGIS Webclient

Kurzfristig Metadatenanzeige (Projekt und Ebene)Verbesserung der Suche Starten des Projekts mit Zoom auf Objekte (Permalink)

Adresse, Parzelle, Schacht, Haltung, etc.Interaktive Ebenentransparenz (im Ebenenbaum)MehrsprachigkeitGUI für Themen/Projektwechsel

Später:

Redlining Interaktive ProfileEditieren (eventuell)

Page 20: Webgis mit QGIS und GeoExt - QGIS Anwendergruppe Schweiz · QGIS Webclient Einfach zu bedienender Webgis-Client Basierend auf WMS-Protokoll mit Erweiterungen Übernimmt möglichst

Diskussion und Fragen