5272 views
 owned this note
Erstellen von Ausschnitten aus Rasterbildern mit QGIS ("QGIS Raster Cutter" Plugin) === **Dies ist ein Tutorial wie man mit dem QGIS-Desktop-Programm (Open Source) aus einem grossen Raster-Bild (bzw. einem Kartenservice oder einer lokalen Datei) einen Ausschnitt lokal zur Weiterverarbeitung ausschneiden (englisch 'to cut') und speichern kann. Zudem ist es eine Dokumentation des QGIS-Plugins 'Raster Cutter'.** _Autoren: Stefan Keller und Fabio Zahner, beide Geometa Lab OST - sowie viele weitere Rezensenten. Juni 2022. Dokumenten-Lizenz CC0 1.0. Fragen und Rückmeldungen an [Stefan Keller](mailto:stefan.keller@ost.ch)._ Dieses Tutorial richtet sich an Nutzer:innen mit einfachen Kenntnissen über Geodaten und Geoinformations-Technologien. Zudem enthält es Informationen für Schweizer Anwender:innen von QGIS 3 und speziell auch für Anwender:innen des CAD-Werkzeugs Lexocad. :::success Hinweis: Wenn Sie an Vektordaten interessiert sind, dann gibt es dazu folgendes Tutorial "[Erstellen von Ausschnitten aus Vektordaten mit QGIS (“QGIS Vector Cutting”)](https://md.coredump.ch/s/G7L_gxMBh#)". Auch für das Ausschneiden von Point Cloud-Daten mit QGIS gibt es einen Entwurf eines [Tutorials (auf englisch)](https://md.coredump.ch/s/0RNH-lr-J#). ::: ## 1. Einführung Viele kennen Luftbilder zum Beispiel von Swisstopo oder von kantonalen GIS-Portalen. Diese Bilder enthalten eine Fülle von Informationen, die eigene, lokale Analysen ermöglichen. Und immer mehr Behördendaten - sogenannte Open Government Data (OGD) - mit Themen über Grund und Boden werden offen und frei verfügbar. Genau genommen ist ein Luftbild ein sogenanntes 'Orthophoto', d.h. georeferenzierte Rasterdaten, also ein Pixelbild, das entzerrt und verortet ist. Luftbilder sind als Dateien verfügbar oder als Webservices. Verbreitete Dateiformate sind JPG, PNG und TIFF. Bei den Webservices haben sich die Standards 'Web Map Service' (WMS) und 'Web Map Tiling Service' (WMTS/XYZ/TMS) etabliert. Einige Eigenschaften dieser Formate und Webservices werden hier noch erläutert. Typische Probleme dabei sind, dass man erstens nicht weiss, wo Luftbilder zu finden sind, und zweitens, wie man einen kleinen Ausschnitt davon herunterladen kann, und drittens wie dabei gleichzeitig das Koordinatensystem umtransformiert wird. Dieser Beitrag möchte diese Probleme lösen mit dem Ziel eine lokale, georeferenzierte Rasterdatei zu erhalten im Format GeoTIFF, PNG oder JPG mit den richtigen Sidecar-Dateien und im passenden Koordinatensystem. Das Dokument ist wie folgt aufgebaut: 1. (Diese) Einführung 2. [Problem und Lösung in Kürze](#2-Problem-und-Lösung-in-Kürze) 3. [Technische Informationen](#3-Technische-Informationen) 4. [Ein Beispiel "Bodenkarte Kt. ZH"](#4-Ein-Beispiel-Bodenkarte-Kt-ZH) 5. [Wie auf Rasterdaten zugreifen und einen Ausschnitt davon herunterladen?](#5-Wie-auf-Rasterdaten-zugreifen-und-einen-Ausschnitt-davon-herunterladen) 6. [Weitere Lösungsvarianten mit QGIS](#6-Weitere-Lösungsvarianten-mit-QGIS) 7. [Wie Rasterdaten finden?](#7-Wie-Rasterdaten-finden) Wer sich schon etwas in Geoinformations-Technologien auskennt (oder die Details wenig interessiert), der kann das Kapitel "[3. Technische Informationen](#3-Technische-Informationen)" auslassen und direkt zum Kapitel "[4. Ein Beispiel...](#4-Ein-Beispiel-Bodenkarte-Kt-ZH)" springen. Folgende Software muss vorbereitet sein für dieses Tutorial: QGIS 3, ein Webbrowser. Wenn nötig, muss QGIS (aktuell ist Version 3.22, mind. QGIS 3.16 LTR) installiert werden. :::info HINWEIS: Installation von QGIS 3: Öffnen Sie diesen Link [qgis.org](https://www.qgis.org/de/site/forusers/download.html#) und wählen Sie das passende Betriebssystem aus (z.B. Windows 64bit). Eine Setup-Datei namens osgeo4w-setup.exe wird heruntergeladen und kann geöffnet werden. Nach dem Ausführen der Datei => Express Installation => QGIS. ::: ## 2. Problem und Lösung in Kürze Die Ausgangslage ist, dass ein grosses Rasterbild - z.B. von der Bodenkarte Kt. ZH - im GeoTIFF-Format oder als Webservice (WMS/WMTS/XYZ/TMS) exisiert. Gesucht ist ein kleinerer Ausschnitt davon - z.B. ein Quartier - und zwar entweder wieder als GeoTIFF oder aber als PNG- oder JPG-Datei. Ein weiteres mögliches Problem bei diesem Prozess ist, dass auch noch eine Koordinatensystem-Transformation durchgeführt werden muss. Bei PNG und JPG ist zwingend noch die Erzeugung einer zusätzlichen Datei, eines sogenannten "World-File", notwendig. QGIS unterstützt diesen Prozess und nachfolgend sind die Schritte kurz beschrieben. Lexocad erwartet ein PNG/JPG und es wird davon ausgegangen, dass das Rasterbild im Schweizer Koordinatenreferenzsystem (CH/LV95) ist und also nicht umtransformiert werden muss. Zudem erwartet Lexocad anstelle eines World-Files eine Sidecar-Datei (PNGL/JPGL). Das QGIS-Plugin 'Raster Cutter' ermöglicht das in einem Schritt. ::: success **HINWEIS**: Sie möchten wissen, wo man frei zugängliche **Rasterdaten** findet? Im [Kapitel 4](#4-Ein-Beispiel-Bodenkarte-Kt-ZH) wird ein Beispiel durchgespielt und im [Kapitel 7](#7-Wie-Rasterdaten-finden) steht mehr dazu - auch zu weiteren QGIS-Plugins. ::: **A. Vorbereitung:** 1. QGIS starten und "Neues Projekt" eröffnen. 2. Evtl. Basiskarte laden (z.B. OpenStreetMap oder MapGeoAdmin). 3. Das QGIS-Projekt auf das Schweizer Koordinatenreferenzsystem CH/LV95 (EPSG:2056) einstellen. 4. Rasterdatei (Datenquelle) d.h. den "Input" bestimmen (GeoTIFF, WMS, WMTS/XYZ). 5. Auf Ausschnitt zoomen. Die Ausdehnung (en: extent) festlegen. **B.1 ... für Smarte (und Lexocad-Anwender) mit dem QGIS-Plugin 'Raster Cutter':** Die Lösungsschritte mit dem QGIS-Plugin 'Raster Cutter' inklusive Koordinatenreferenzsystem-Transformation und inklusive Lexocad siehe im [Kapitel 5.2 unten](#Bedienungsanleitung). ::: success **HINWEIS**: Mit QGIS-Plugin `Raster Cutter` kann ein Ausschnitt auch als GeoTiff exportiert werden. Mehr hierzu ebenfalls im [Kapitel 5.2](#Bedienungsanleitung). ::: **B.2 ... für PNG-/JPG-Export inkl World-File:** 1. ```Raster auf Ausdehnung zuschneiden``` (en: "Clip Raster by Extent") wählen und Resultat als temporärer Layer (GeoTIFF) anzeigen. 2. Falls ein WMS-Layer verwendet wird, muss dieser als lokale Datei abgespeichert werden. Falls der WMS-Layer nicht als lokale Datei abgespeichert wird, kann kein Ausschnit mit ```Raster auf Ausdehnung zuschneiden``` erstellt werden. 3. Der Ausschnit in QGIS kann nun gespeichert werden unter ```Projekt > Import/Export > Karte als Bild speichern...``` 4. Fertig (Laden und Betrachten mit QGIS) **B.3 ... für GeoTIFF-Export:** 1. Unter ```Raster > Extraktion > Raster auf Ausdehnung zuschneiden``` auswählen. 2. Eine der Methoden unter Ausdehnung zuschneiden auswählen. 3. Mit gültigen Parametern kann der Ausschnitt erstellt werden und das Resultat ("Output") als GeoTIFF gespeichert werden. 4. Fertig (Betrachten mit QGIS) :::success **TIPP**: Bei der Wahl eines Dateinamens immer darauf achten, dass er sinnvoll und selbstdokumentierend ist. Einen Ausschnitt des Beispiels Bodenkarte Kanton Zürich (vgl. unten) über die Parzellen 1000 und 1001 könnte man z.B. nennen "Bodenkarte_KtZH_Parz_1000_1001.tif". Namen wie "ausschnitt.tif", "export.tif" oder "extent.tif" sind nichtssagend. Ebenso werden Leerzeichen mit "_" dargestellt um Probleme in der Zukunft mit dem File zu verhindern. ::: ![](https://md.coredump.ch/uploads/upload_651dade7fd5f165872b298520d5cda55.png) _Abbildung 1: Bodenkarte Kt. Zürich (grösserer Ausschnitt)_ ## 3. Technische Informationen Beim Umgang mit Rasterbildern in GIS muss man einige Dinge beachten. ### Dateiformate JPG, PNG und GeoTIFF Bei Dateien muss man das Format kennen. Jedes Format hat seine Eigenschaften. Wir konzentrieren uns hier auf die Bildformate JPG, PNG und TIF. Der Vorteil von JPG ist u.a. die kleinere Dateigrösse im Vergleich zu PNG und TIF. Der Nachteil gegenüber den beiden ist, dass das JPG-Format verlustbehaftet ist, d.h. dass die Pixelwerte leicht verändert werden (wegen der Kompression) und dass JPG keine Transparenz kennt. GeoTIFF ist ein TIF (oder .TIFF) welches ein Format zur Speicherung von Bilddaten ist. Speziell am GeoTIFF ist, dass es eine verlustfreie Speicherung zulässt und Georeferenzierungs-Informationen in die Datei eingebettet hat. Aus diesem Grund eignet es sich sehr gut für die Verarbeitung von geographischen Daten. :::info **TIPP:** Hier eine Empfehlung für die Wahl des Raster-Dateiformats: Wenn das System GeoTIFF unterstützt, dann GeoTIFF - ansonsten PNG. ::: ### Webservices WMS und WMTS/XYZ/TMS Zuerst zu den Abkürzungen: * WMS steht für "Web Map Service" und ist eine international genormte Schnittstelle zum Abrufen von Auszügen aus einer Karte über das Internet. * WMTS steht für "Web Map Tiling Service" und ist eine international genormte Schnittstelle zum Abrufen von Auszügen einer Karte über das Internet mittels Kacheln. * XYZ bzw. TMS (TMS Tiles Map Service) ist ähnlich wie WMTS ein Schnittstelle zum Abrufen von Auszügen einer Karte über das Internet mittels Kacheln. XYZ/TMS wurde von Google Maps und Open Source-Software bzw. OpenStreetMap geprägt. Wenn man Webservices ansprechen will, braucht es eine Internet-Verbindung und man muss den Weblink kennen. Wie ein WMS/WMTS und ein XYZ/TMS Service auf QGIS eingerichtet werden kann, wird Ihnen im Abschnitt "[Beispiel der Bodenkarte des Kt.ZH](#Ein-Beispiel-“Bodenkarte-Kt-ZH”)" erklärt. WMS liefert ein einziges Bild zurück, während WMTS/XYZ/TMS Kacheln (engl. tiles) zurückliefern. Mehr zu WMS, WMTS und XYZ/TMS gibt es [hier auf dem GISWiki](https://giswiki.hsr.ch/WMS). Basiskarten - wie zum Beispiel auch im Kapitel "[Basiskarten](#Basiskarten)" erwähnte Swisstopo-Luftbild - können nicht nur als Hintergrund sondern auch als Input-Layer verwendet werden. :::info **HINWEIS**: Man beachte, dass QGIS einen einzigen Dialog für das Laden von WMS/WMTS-Layer bereitstellt und einen separaten Dialog für XYZ/TMS-Layer. WMS/WMTS-Services sind beide von OGC normiert worden. Technisch ähnlicher zueinander sind jedoch eigentlich WMTS und XYZ/TMS, da diese mit Kacheln arbeiten. Hier gibt es eine gute [Einführung in die Einbindung von WMS/WMTS in QGIS](https://www.stadt-zuerich.ch/portal/de/index/ogd/werkstatt/wms_wmts/wmts_in_qgis.html) (Stadt Zürich). ::: ### Begrenzungsgeometrie, Auflösung, Massstab Zwischen folgenden besteht ein direkter Zusammenhang: * Begrenzungsgeometrie (Bounding Box am Bildschirm in Latitude/Longitude-Grad oder in CH-Koordinatensystem-Meter) * Auflösung am Boden, d.h. Pixel-Grösse (v.a. in Meter) * Massstabszahl (z.B. 1:5'000) Der Massstab (en: scale) ist das Verhältnis zwischen der angezeigten Grösse und der tatsächlichen Grösse in der Realität. Auflösung (en: resolution): Die Auflösung ist die Grösse einer Gitterzelle auf dem Boden. Eine hohe Auflösung bedeutet kleine Rasterzellen, mehr Rasterzellen und eine grössere Dateigröße. Ein guter Wert für die Gitterauflösung ist: Auflösung = Massstabsfaktor / 2'000 (Hengl 2006). Ein Massstab von 1:2'500 würde also eine Auflösung von 1.25 Meter bedeuten (2500/2000). Wenn hochauflösende Daten zur Verfügung stehen, kann eine gröbere Auflösung verwendet werden, was eine Änderung der Zellengrösse bedeutet. Der Prozess der Änderung der Zellengrösse wird als Resampling bezeichnet. Er beinhaltet einen Resampling-Algorithmus. Bei kategorischen Daten - wie z.B. der Bodenbedeckung - wählen Sie Nearest Neighbor (Standardeinstellung); dadurch wird der Z-Wert der Eingabezellen nicht verändert. Für kontinuierliche Daten - wie z.B. Gelände, Wetter - wählen Sie Bilinear oder Cubic (besser, aber langsamer), die beide interpolieren. Die Pixelgrösse des Bilschirms oder der Daten sind nicht direkt relevant für den Massstab. Der WMS-Standard z.B. geht von einer einer Pixelgröße von 0.28 mm (= 1 DPI) aus. Für Fortgeschrittene gibt es [hier](https://github.com/qgis/QGIS/issues/15674#issuecomment-495660784) weitere Überlegungen zu DPI/RESOLUTON im Zusammenhang mit WMS. :::info **TIPP**: Im QGIS-Menü ```View > Zoom to Native Resolution``` zoomt die Karte auf den Massstab mit der besten Auflösung für diesen Layer. ::: ### Koordinaten-Referenz-Systeme (KRS) Das Koordinaten-Referenz-System (KRS, englisch: "Coordinate Reference System", manchmal auch Bezugssystem genannt) ist oft ein Stolperstein bei der Verwendung von Rasterbildern . KRS wurden standardisiert (siehe https://epsg.io) und erhielten vier- bis fünfstellige Nummern, z.B. EPSG:2056 für das aktuelle KRS der Schweiz. Die Transformation von einem System ins andere ist bei Rasterbilder aufwändig - jedenfalls aufwändiger als bei Vektordaten - und viele Systeme unterstützen das nicht. Lexocad beispielsweise erwartet fest EPSG:2057. KRS ist für sich selbst beinhaltet zu viel Inhalt um komplett in diesem Übungsblatt abzudecken. Was jedoch für Rasterdaten in QGIS und KRS zusammen wichtig ist, ist, dass wenn mehrere Datensätze verwendet werden, diese das gleiche KRS haben müssen. Bei der Verwendung von zwei verschiedenen KRS stimmen die Daten der verschiedenen Datensätzen nicht mehr miteinander überein. (Falls noch nicht klar ist, wofür das KRS steht und warum es wichtig ist, können Sie sich über [diesen Link](https://docs.qgis.org/3.16/en/docs/gentle_gis_introduction/coordinate_reference_systems.html) informieren). Wenn man Datensätze verwendet, die spezifisch z.B. aus der Schweiz stammen, muss das KRS umkonvertiert und/oder umtransformiert werden und zwar in das KRS LV95 2056. Im allgemeinen ist das KRS Webmercator 3857 der Default. In QGIS kann das KRS LV95 2056 unter ```Projekt > Eigenschaften > KRS``` gewählt werden. Da es viele KRS gibt, sind nicht alle in QGIS vorinstalliert. Unter ```Projekt > Eigenschaften > KBS``` können vordefinierte KRS nachgeladen werden. In der Vorschau sieht man auch auf welchen Teil der Welt sich das KBS bezieht. Wenn man unter Layer-Eigenschaften geht, kann das KRS der einzelnen Layers unter Quelle ebenfalls angepasst werden. :::info **HINWEIS**: Typische KRS für die Schweiz sind 2056 (CH1903+/LV95) und veraltet(!) 21781 (CH1903/LV03). Dazu kommen 4326 (WGS84 lat/lon) und EPSG:3857 (Web-Mercator). ::: ### Rasterbilder georeferenzieren mit World-File (JGW, PGW, TFW, GeoTIFF) Rasterbilder müssen georeferenziert sein damit eine Software wie QGIS "weiss", an welcher Koordinate ein Pixel liegt. Die Bilddateien JPG, PNG und TIF alleine haben keine Angaben zur Georeferenzierung. Daher wird eine sogenannte 'Sidecar-Datei' (Filialdatei) benötigt. Ein 'World-File' ist so eine kleine zusätzliche Sidecar-Datei. Sie erhält Georeferenzdaten in Textform. Es ist eine Sidecar-Datei, die von der Firma ESRI mit ihrer Software (ArcGIS, ArcView) als Ergänzung für einfache Bildformate eingeführt wurde. Die Dateinamenserweiterung leitet sich vom Format ab und lautet beispielsweise .JGW für JPG, .PGW für PNG oder .TFW für TIFF-Bilddaten. :::success **TIPP**: Bei JPG- und PNG-Dateien kann das World-File - z.B. .JGW und .PGW - auch nachträglich erzeugt werden, gegeben diese liegen in QGIS richtig georeferenziert vor. Dabei in QGIS den Layer selektieren und im Raster-Menü "Extract projection" aufrufen! Der Name dieser Funktion ist etwas verwirrend, denn die Sidecar-Dateien .PRJ für die Projektion (d.h. das KRS) kann zwar auch erzeugt werden; doch das ist optional. ::: Eine GeoTIFF-Datei ist eine TIF-Datei, welche die Georeferenzierung in der Datei selber eingebaut hat. Sie enthält viel mehr Informationen und Daten als die oben erwähnte TFW-Sidecar-Datei. :::warning **WICHTIG**: Das KRS fehlt in den genannten Sidecar-Dateien! D.h. die Rasterdatei muss z.B. in QGIS "von Hand" kontrolliert und ggf. im QGIS-Projekt gesetzt werden. Nach dem öffnen eines Projektes in QGIS kann unter Projekt => Einstellungen => KBS die gewollte KBS gesetzt werden. ::: ### Rasterbilder georeferenzieren für Lexocad (JPGL, PNGL, GeoTIFF) Für Lexocad ist zusätzlich zu JPG die Sidecar-Datei JPGL, bzw. zu PNG die Sidecar-Datei PNGL erforderlich, also z.B. bodenkarte.jpg und bodenkarte.jpgl. Diese Dateien beinhalten Georeferenzdaten des Bildes - analog dem World-File. Diese zusätzlichen Sidecar-Dateien sind zwingend erforderlich, um die Dateien in Lexocad verwenden zu können. Dann gibt es in Lexocad noch die Möglichkeit eine lokale GeoTIFF-Datei einzulesen. Diese wird dann als Punktwolke interpretiert. Dabei wird der Raster-Pixel-Wert als Höhenangabe verwendet. :::success **TIPP** für Lexocad-Benutzer: * Lexocad benötigt eine eigene Sidecar-Datei für JPG und PNG: Siehe unten. * Wenn man eine Datei mit einer Rasterdatei mit World-File hat und diese in Lexocad verwenden will, dann kann man dieses in QGIS laden und dann mit dem Plugin speichern. D.h. man verfährt gleich wie einen Ausschnitt mit QGIS speichern (siehe unten). ::: ## 4. Ein Beispiel Bodenkarte Kt. ZH Nachdem das Technische oben erläutert wurde, zeigen wir jetzt, wie ein Rasterbild in QGIS betrachtet werden kann. Als Beispiel verwenden wir diesen WMS (Basis-URL) der "Bodenkarte der Landwirtschaftsflächen des Kantons Zürich" (kurz: Bodenkarte Kt.ZH). Folgende Schritte genau einhalten: 1. QGIS starten und "Neues Projekt" eröffnen. 2. Die Basiskarte "OpenStreetMap Standard" laden und zwar im Browser-Tab von QGIS unter "XYZ Tiles". 3. Im Karten-Fenster rechts unten auf das Koordinatensystem (CRS) klicken und im Dialog "EPSG:2056" wählen. 4. Im Karten-Fenster in die Schweiz auf einen Massstab von ca. 1:5000 hineinzoomen. 5. Im Browser-Tab von QGIS unter "WMS/WMTS" "Bodenkarte Kt. ZH (WMS)" anwählen und dann auf "Kartiereinheit" klicken. Im Tab "Layers" kontrollieren. 6. Falls "Bodenkarte Kt. ZH (WMS)" nicht vorhanden, diese einmalig mit Rechtsklick auf "New Connection" klicken. Im Pop-up den WMS Layer benennen (z.B. "Bodenkarte Kt. ZH (WMS)"), und die Basis-URL ```http://wms.zh.ch/OGDBoKaZH``` einfügen, dann Layer-Name 'Kartiereinheit' wählen (Hinweis: diese Basis-URL ist ein Webservice, d.h. sie ist *nicht* zum draufklicken und *nicht* für den Webbrowser bestimmt). Mit "OK" bestätigen wird. (Weiterer Hinweis: Falls der Massstab nicht 1:10000 oder grösser 1:2500 ist, erscheint keine Karte!). ![](https://md.coredump.ch/uploads/upload_1515b7c61998319aaaab13d3bc14c332.png) _Abbildung 2: Bodenkarte Kt. ZH (Braun- und Grüntöne) mit Basiskarte "OpenStreetMap Standard" im Hintergrund (graue Farben)_ ## 5. Wie auf Rasterdaten zugreifen und einen Ausschnitt davon herunterladen? Wer eine Rasterdatei oder einen Webservice gefunden hat, möchte nun auf diese zugreifen und einen Ausschnitt davon herunterladen. Für diesen Zweck ist QGIS gut geeignet und bietet viele verschiedene Möglichkeiten. In den folgenden Kapiteln werden zwei Varianten vorgestellt, um mit QGIS einen Auschnitt zu erstellen und herunterzuladen. Danach sind "Weitere Lösungsvarianten mit QGIS" zusammengestellt. ### Rasterdaten-Ausschnitte herunterladen mit QGIS out-of-the-box QGIS bietet die Möglichkeit, Rasterdaten als Webservice (WMS/WMTS/XYZ/GeoTIFF) oder Datei (GeoTIFF) zu öffen und zu visualisieren. QGIS bietet von Grund auf schon viele Funktionen an, einen Ausschnitt davon zu speichern. Diese Lösungsvarianten werden unten genauer vorgestellt. Bei allen Lösungsvarianten basierend auf den Grundfunktionen von QGIS gibt es jedoch wichtige Einschränkungen. Im nächsten Kapitel wird darum ein neues QGIS-Plugin beschrieben, das diese Einschränkungen nicht hat und - nebst dem World-File - zusätzlich für Lexocad die entsprechenden PNGL/JPGL-Datei erzeugt. In Kapitel "Weitere Lösungsvarianten mit QGIS" werden die in QGIS vorhandenen Lösungsmöglichkeiten erläutert. ::: info **HINWEIS**: Für QGIS findet man eine [offizielle Dokumentation](https://docs.qgis.org/3.16/de/docs/user_manual/working_with_raster/index.html) (v3.16 en), welche auch die Arbeit mit Rasterdaten beinhaltet. Ebenfalls findet man auf [OpenSchoolMaps](https://openschoolmaps.ch/pages/materialien.html) einige Aufgaben, die den Umgang mit QGIS und Rasterdaten beinhalten. ::: ### Rasterdaten-Ausschnitte herunterladen mit dem QGIS-Plugin Raster Cutter Das Ziel dieses neuen Plugins ist es, in einem einzigen Schritt aus einer grossen GeoTIFF-Datei oder aus WMS/WMTS/XYZ-Services einen Ausschnitt (engl. cut, clip, extract) zu erstellen, und diesen Ausschnitt lokal zur Weiterverarbeitung zu speichern als GeoTIFF-, PNG- oder JPG-Datei und zwar mit passendem Koordinatenreferenzsystem und inkl. Erzeugen eines "World-File" (zusätzlich auch für LexoCAD). :::info **HINWEIS:** QGIS-Plugins können unter dem Menü ```Plugins > Manage and Install Plugins``` aktiviert oder heruntergeladen werden (ggf. "Experimentelle Plugins zulassen"). ::: #### Bedienungsanleitung Dies sind die Lösungsschritte mit dem QGIS-Plugin 'Raster Cutter' inklusive Koordinatenreferenzsystem-Transformation und inklusive Lexocad: 1. QGIS Starten - ggf. QGIS-Plugin 'Raster Cutter' installieren - und "Neues Projekt" eröffnen. 2. Das QGIS-Projekt auf das CRS "EPSG:2056" (= Schweizer Koordinatenreferenzsystem CH/LV95) einstellen (rechts unten). 3. Gegebenenfalls Hintergrund-/Basis-Karte laden (z.B. OpenStreetMap oder MapGeoAdmin). Vergewissern, dass das CRS immer noch "EPSG:2056" ist. 5. Rasterdatei/Datenquelle (= Input-Layer) laden (WMS, WMTS/XYZ/TMS, GeoTIFF) und auf den gewünschten Ausschnitt zoomen. 6. Den Dialog des Plugins 'Raster Cutter' öffnen und dort die nötigsten Parameter bestimmen: 1. Input-Layer wählen (falls nicht schon selektiert) 2. Die Ausdehnung (en: extent) festlegen indem man z.B. auf "Map Canvas Extent" klickt. 3. Pfad und Name des Outputs festlegen sowie das Ausgabeformat (GeoTIFF, PNG oder JPG). 4. Falls gewünscht, die "Create LexoCAD" Checkbox ankreuzeln, um LexoCAD Georeferenz-dateien zu generieren. 7. Gegebenenfalls weitere Parameter setzen (für Fortgeschrittene): CRS und Output resolution. 8. Fertig (Laden und Betrachten mit QGIS oder Lexocad). ![](https://raw.githubusercontent.com/geometalab/qgis-raster-cutter/main/docs/screenshot.png) _Abbildung 3: Dialog des neuen QGIS-Plugins 'Raster Cutter'._ #### Über das QGIS-Plugin Raster Cutter Bei allen Lösungsvarianten basierend auf den Grundfunktionen von QGIS gibt es jedoch wichtige Einschränkungen. * Bei keiner Lösungsvariante ausser "Raster > Translate (Convert)" gibt es die Möglichkeit, als PNG oder JPG zu speichern. * "Raster > Translate (Convert)" kann zwar PNG oder JPG speicher, aber es kann kein Ausschnitt angegeben werden. * Bei den anderen Lösungsvarianten kann keine Koordinaten-Transformation - d.h. kein Wechsel des KRS ("Clip Raster by Extent") - angegeben werden. D.h. dieses Plugin ist sozusagen eine Kombination von drei GDAL-basierten QGIS-Processing-Funktionen. Limitationen des Plugins bzw. Weiterentwicklungsmöglichkeiten: * GeoTIFF-Dateien müssen als Ganzes in Memory passen, d.h. sind Main Memory-limitiert - wie alle anderen Funktionen von QGIS auch. * Umgang mit Transparenz und Z-Values (Überschreiben, NODATA, Klassieren). :::warning **HINWEIS**: Geben Sie Feedback zum QGIS-Plugin 'Raster Cutter' - wie auch zu dieser Dokumentation! [GitHub](https://github.com/geometalab/qgis-raster-cutter) (aktuell Version 0.5) ::: ## 6. Weitere Lösungsvarianten mit QGIS Folgende Lösungsvarianten für das Ausschneiden und Herunterladen/Exportieren gibt es in QGIS (am Beispiel Bodenkarte Kt. ZH als GeoTIFF oder WMS). Im folgenden Abschnitt werden 4 Lösungvarianten erwähnt. Wie die einzelnen Lösungsvarianten funktionieren und was ihre Vor- und Nachteilen sind werden weiter unten genauer erklärt . 1. Rasterdatei mit "Karte als Bild speichern" exportieren. 2. Rasterdatei mit "Raster auf Ausdehnung zuschneiden". 3. Rasterdatei mit "Rasterlayer speichern als..." (entweder via Menu "Layer" oder Layer-Menu "Export"). 4. Ausschnitt herunterladen für Fortgeschrittene. ::: success **INFO**: Weitere Tutorials gibt es hier: * Tutorial "Erstellen und Zuschneiden eines Raster-Mosaiks" von Ujaval Gandhi (2021? deutsch. Benutzt "Clip Raster by Mask Layer"): https://www.qgistutorials.com/de/docs/3/raster_mosaicing_and_clipping.html * Video-Tutorial "QGIS 3: How to Clip Raster Image in QGIS" von Benutzer "miXcel" (17.05.2020 englisch. Benutzt "Clip Raster by Mask Layer, Export): https://www.youtube.com/watch?v=I69n2fah1GY * Video-Tutorial "Clip a Raster Layer in QGIS (three different ways)" von Benutzer "Open Source Options" (30.03.2021, englisch. Benutzt "Clip Raster by Extent" und "Clip Raster by Mask Layer" ): https://www.youtube.com/watch?v=hPSIW1W3XjY ::: ### 1. Rasterdatei mit "Karte als Bild speichern" (en: "Export as Image") PNG ist eines der bekanntesten Dateiformat um Bilder zu speichern. "Karte als Bild speichern" ist auf QGIS jedoch die einzige Möglichkeit, eine Rasterdatei als PNG/JPG zu speichern. Die Im Beispiel verwendete Datei ist der Übersichtsplan Kanton ZH(WMS: http://wms.zh.ch/upwms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=698522,232965,701777,235179&WIDTH=10000&HEIGHT=7000&FORMAT=image/png&LAYERS=upwms&CRS=EPSG:21781) Im ersten Schritt erstellen wir eine Verbindung mit dem WMS Service mit der oben erwähnten URL (Hilfe zu WMS Verbindung erstellen ist im Kapitel Webservices WMS und WMTS/XYZ erhältlich). Nach dem erfolgreichem erstellen einer Verbindung kann die Layer mithilfe des WMS Service eingefügt werden. Die angezeigte Layer in QGIS kann mit dem Mausrad vergrössert und verkleinert werden. Wenn man mit dem Ausschnitt der im Kartenfenster angezeigt wird zufrieden ist, kann über Projekt => Import/Export => "Karte als Bild speichern" das Format und der Dateiname bestommen werden. Als Resultat erhält man ein PNG der Kartenansicht von QGIS: ![](https://md.coredump.ch/uploads/upload_61e7ff218f53c54c1343aef12760e67a.png) _PNG Ausschnitt des Übersichtsplan von Kt.ZH_ Vorteile: * Mit wenigen Schritten erhält man mit dieser Methode bereits ein Ergebnis * Nur mit dieser Methode kann als PNG/JPG gepseichert werden Nachteile: * Nur der Teil der auf der Kartenansicht gezeigt ist wird gespeichert * Schlecht anpassbar ### 2. Rasterdatei mit "Raster auf Ausdehnung zuschneiden" (en: "Clip Raster by Extent") "Raster auf Ausdehnung zuschneiden" ist eine Möglichkeit, in QGIS einen Ausschnitt einer Rasterdatei zu erstellen. Wie der Name andeutet, erstellt diese Funktion einen Ausschnitt des Rasterbild zu einem gegebenen Ausschnitt. Im folgenden zeigen wir Ihnen, wie man einen Ausschnitt von einem grossen GeoTIFF zuschneidet. Im Beispiel wird die Bodenkarte des Kt.ZH verwendet, welche als Geotiff(share link) oder als WMS Service (http://wms.zh.ch/upwms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=698522,232965,701777,235179&WIDTH=10000&HEIGHT=7000&FORMAT=image/png&LAYERS=upwms&CRS=EPSG:21781) geladen werden kann. Wenn die Datei über den shared Link oder den WMS Service importiert wurde, sollten im Layer Fenster der Uebersichtsplan Kanton ZH erscheinen. Die Funktion "Clip Raster by Extent" kann bei QGIS im Menü gefunden werden unter "Raster => Extraction => Raster auf Ausdehnung zuschneiden" und bei den Processing Tools bei Verarbeitung => Werkzeugkiste => Raster auf Ausdehnung zuschneiden. Der dafür verwendete Algorithmus basiert auf GDAL. Es öffnet sich ein Dialogfenster, in welchem Sie den Layer auswählen können, von dem Sie einen Ausschnitt erstellen wollen. ![](https://md.coredump.ch/uploads/upload_e71210ae5d53f2577e19ceb49eb3e727.png) _Abbildung 4: Raster auf Ausdehnung zuschneiden Einstellungen_ Um einen Ausschnitt zu erstellen, stehen verschiedene Möglichkeiten zur Verfügung. Diese sind unten einzeln erläutert und können unter Ausdehnung zuschneiden aufgefunden werden. An dieser Stelle empfehlen wir, vor dem Starten der Funktion, den auszuschneidenden Layer im Layers-Panel anzuwählen und auf den gewünschen Kartenausschnitt zoomen. Was bei dieser Lösung fehlt, ist die einfache Angabe eines Ausgabeformats (wie PNG und JPG), das nicht GeoTIFF ist. Das geht einerseits über "Zusätzliche Kommandozeilen-Parameter" (vgl. Hinweis unten, der sich an Fortgeschrittene richtet) oder über einen zweiten Verarbeitungs-Schritt (vgl. das Kapitel "Zusammenfassung" oben). Ansonsten hilft evtl. ein Plugin (das es aber noch nicht gibt). :::info **HINWEIS**: Das Ausgabeformat PNG kann beim Dialog "Raster auf Ausdehnung zuschneiden" unter "Zusätzliche Kommandozeilen-Parameter" mit "-of PNG" angegeben werden. Dabei ist bei PNG zu beachten, dass der "Output Data Typ" Uint16 oder Byte ist. ::: #### Einen Ausschnitt wählen Im Dialog der sich bei der Auswahl von "Raster auf Ausdehnung zuschneiden" öffnet, kann unter Ausdehnung zuschneiden das Dropdown geöffnet werden. Folgende drei Optionen, um einen Ausschnit zu erstellen, werden nun angezeigt: 1. Kartenausschnitt verwenden (en: Use Map Canvas Extent) 2. Aus Layer berechnen (en: Calculate From Layer) 3. Auf Kartenansicht zeichnen (en: Draw on Canvas) #### Kartenausschnitt verwenden (en: Use Map Canvas Extent) Wenn Sie "Use Map Canvas Extent" verwenden, wird der auf dem QGIS-Kartenansicht Ausschnitt, ausgeschnitten. Die Grösse kann durch hinein- oder herauszoomen auf der QGIS-Anzeige verändert werden. Mit einem erneuten Klick auf "Use Map Canvas Extent" werden die Ausschnittswerte aktualisiert. Unter Fortgeschrittene Parameter können Sie den Speicherort auswählen. Mit Starten wird der Alorithmus von GDAL ausgeführt und die Datei gespeichert. Vorteile: * Schnell auffindbar * Einfach bedienbar * Der Ausschnitt der Layer kann angepasst werden Nachteile: * Der Zoom muss manuel auf der QGIS Karte angepasst werden #### Ausschnitt aus Layer berechnen (en: Calculate From Layer) Wenn Sie "Calculate From Layer" anklicken, wird Ihnen eine Liste von Layers angezeigt, welche in QGIS momentan geöffnet sind. Wählen sie die Layer aus, von welcher sie einen Ausschnitt erstellen wollen. Nach Bestätigung wird automatisch das minimum und maximum von x und y der ausgewählten Layer eingefügt. Legen Sie als letzter Schritt nun noch einen Speicherort fest und mit Start wird der GDAL Algorithmus gestartet. Vorteile: * Schnell auffindbar * Einfach bedienbar Nachteile: * Die maximal unterstützte Bild-Dimension ist 65500x65500 Pixels #### Ausschnitt auf Kartenansicht zeichnen (en: Draw on Canvas) Mit "Draw on Canvas" kann ein benutzerdefinierter Bereich augewählt werden. Mit Klick auf "Draw on Canvas" werden Sie auf die Kartenanzeige geleitet. Dort können Sie mit dem Fadenkreuz und Rechtsklick einen Benutzterdefinierten Bereich auswählen. Nach dem festlegen des Bereichs, werden Sie zurück auf das Dialogfenster geleitet, in welchem die Daten automatisch übertragen werden. Wenn Sie denn Speicherort festgelegt haben und mit Ihrem ausgewähltem Ausschnitt zufrieden sind können Sie den GDAL Algorithmus über "Starten" ausführen Vorteile: * Schnell auffindbar * Der Ausschnitt kann mit dem Fadenkreuz bestimmt werden * Mit dem Mausrad kann der Zoom angepasst werden Nachteile: * Das anpassen kann nur mit dem Fadenkreuz gemacht werden. ### 3. Rasterdatei mit "Speichern als..." (en: "Save Raster Layer As...") QGIS bietet die Möglichkeit einen Layer zu speichern. Dazu kann die gewünschte layer mit Rechtsklick ausgewählt werden => Export => Speichern als... In Diesem Beispiel verwenden wir wieder die Bodenkarte des Kt.ZH(Gleiche WMS Adresse wie im anderen Bsp.) ![](https://md.coredump.ch/uploads/upload_ee0a8d26e2c6acf59ab57493ac0b0779.png) _Abbildung 5: Speichern als Location_ Nun öffnet sich ein Fenster in welchem man Einstellungen wie das Wunschformat, die Ausdehnung Extent und das KRS bestimmen kann. ![](https://md.coredump.ch/uploads/upload_e3ccf4828f068812ca179e69f43f2ee0.png) _Abbildung 6: Speichern als Einstellungen_ :::warning **HINWEIS:** Die folgenden Einstellungen müssen übernommen werden! * VRT erzeugen muss ausgeschaltet sein * Der Dateiname muss ausgefüllt sein * KRS nach Bedarf anpassen, damit der Datensatz nicht verschoben ist * Die Auflösung muss wie im Bild übernommen werden (z.B. 1m) ::: Nun muss noch das GeoTIFF in PNG/JPG gewandelt werden. Siehe "... für Fortgeschrittene" ... Vorteile: * Schnell und einfach auffindbar * Einstellungsmöglichkeiten wie Formatauswahl Nachteile: * Unter der Format-Wahl kann kein JPG oder PNG ausgewählt werden; nur GeoTIFF ist nutzbar. Dafür ist ein komplett separater Schritt nötig. * Modaler Dialog; es gibt auch keine zusätzlichen Kommandozeilen-Parameter (für Fortgeschrittene). * Unklar, ob das die geeignete/beste Zoom-Stufe war ### 4. Ausschnitt herunterladen für Fortgeschrittene Man kann Rasterdateien mittels GDAL in dutzende Formate konvertieren. Dazu bietet sich entweder der Online-Konverter geoconverter.infs.ch an - oder aber GDAL. GDAL wird mit QGIS mit installiert und lässt sich in der Kommandozeile aufrufen. Wie das geht wird im OpenSchoolMaps-Arbeitsblatt (@TODO) gezeigt. Wenn man zusätzlich noch das World-File erstellen will, muss beachtet werden, dass bei der Kommandozeile "World-File=yes" angegeben wird. ---- Weblink (URL) des Webservices direkt in QGIS eingeben - wenn man ihn weiss (z.B. vom Suchportal) Es folgende Orte bei denen in QGIS Funktionalitäten stecken: 1. Eingebaut (z.B. Export Layer Definition File) 2. Unter verwendung von externen Libraries (z.B. GDAL/OGR) 3. Als Plugin (vorkompiliert als C++ oder aber nachladbar in Python) 4. Als Processing Tool (das seinerseits GDAL/OGR nutzt oder via Plugin installiert wird) Ausserhalb QGIS gibt die Möglichkeit, GDAL auf der Kommandozeile zu verwenden. Dazu muss man GDAL kennen. Einige QGIS-Dialoge helfen einem dabei. Oder aber man lädt einen Ausschnitt eines WMS-Webservice direkt herunter. Dazu sind genaue Kenntnisse des WMS nötig. ::: success **TIPP**: Das QGIS Plugin "Bounding Box" bietet gute Dienste zur Bestimmng des wichtiger WMS-Parameters "Bounding Box". QGIS Plugin "Bounding Box": Nach dem Starten des Plugins, kann die Bounding Box des Anzeigefensters, welche aus (xmin,ymin,xmax,ymax) besteht, anzegeigt werden. Ebenfalls wird ein WMS "GetMap Request" für den vorhin ausgewählten Ausschnitt der Layer erstellt. ::: ## 7. Wie Rasterdaten finden? In der Schweiz bekannte Möglichkeiten zur Datenbeschaffung sind unter anderem der Kartenviewer MapGeoAdmin von Swisstopo oder kantonale Kartenviewer. Dann gibt es noch das offizielle Suchportal opendata.swiss für offene Schweizer Daten oder das Zürcher Portal GeoLion, die jedoch keine Kartenvorschau bieten. Folgende Lösungsvarianten, um WMS/WMTS/XYZ-Dienste zu finden empfehlen wir: * Suche in Kartenportalen * Suche in QGIS (QMS Plugin) * Suche für Fortgeschrittene ::: success **TIPP**: Rasterdaten und allgemein offene Geodaten im Internet zu finden ist immer noch im Wandel und mit einigem Aufwand und viel Erfahrung verbunden. Wir vom Geometa Lab haben diese Erfahrung und bieten Kurse (siehe diese [Agenda](https://giswiki.hsr.ch/Agenda) sowie Unterstützung an (siehe Kontaktadresse zu diesem Dokument). ::: ### Häufig genutzte Karten-Webdienste in der Schweiz * Swisstopo swissALTI (WMS) multidirektionales Relief: ```https://wms.geo.admin.ch/``` * Swisstopo swissIMAGE (WMTS/XYZ): ```https://wmts.geo.admin.ch/1.0.0/ch.swisstopo.swissimage/default/current/3857/{z}/{x}/{y}.jpeg``` - siehe auch QMS https://qms.nextgis.com/geoservices/4683/ * Daten der Amtlichen Vermessung (AV) einzelner Kantone der Schweiz (WMS): via geodienste.ch * OSM Swiss Style: siehe QMS bzw. as XYZ/TMS in QGIS vorinstalliert ### Basiskarten Typische Basiskarten sind das Luftbild oder die Schweizer Karte von Swisstopo oder die OpenStreetMap-Basiskarte. Während der Bearbeitung liefert sie eine Orientierung bei der Geodaten-Erfassung. Hier als Beispiel das Luftbild ("swissIMAGE") von Swisstopo als Webservice-Weblink im XYZ-Format (WMS/WMTS/XYZ): ```https://wmts.geo.admin.ch/1.0.0/ch.swisstopo.swissimage/default/current/3857/{z}/{x}/{y}.jpeg```. ::: success **TIPP:** Es gibt ein QGIS-Plugin ['Swiss Geo Downloader'](https://pimoll.github.io/swissgeodownloader/) mit dem man einfach Swisstopo-Karten herunterladen kann. Und es gibt für Rasterdatn ein generelles QGIS-Plugin ['STAC API Browser'](https://plugins.qgis.org/plugins/qgis_stac/). QGIS Plugins lassen sich einfach aus QGIS heraus installieren. ::: ### Suche in Kartenportalen Das Kartenportal MapGeoAdmin (https://map.geo.admin.ch) bietet eine interaktive Webseite, die auf der Webseite dargestellt und angepasst werden können. Kartenviewer des Kantons Zürich https://maps.zh.ch/ (siehe auch "Datenquellen zur Schweiz" unten) hat eine grosse Auswahl an Karten zu jeglichen Themen. Diese Können auf der Webseitet angezeigt, und bei Bedarf ebenfalls als JPEG/World-File heruntergeladen werden. ### Suche in QGIS Suche von Geodaten bzw. Rasterdaten mit dem QGIS Plugin "Quick Map Services" (QMS) "Search QMS". Nach dem installieren des QMS Plugin, kann es in dem Werkzeugkasten aufgefunden werden: https://qms.nextgis.com/ . QMS bietet mehrere Möglichkeiten, Daten hinzuzufügen. Die erste Möglichkeit ist, bereits vom Plugin vorinstallierte Services zu verwenden. Die Mehrheit der Daten stammen von bekannten Anbietern wie z.B. NASA, Geofabrik oder OpenStreetMap. Die oben erwähnte QMS-Webseite bietet nur einen einfachen Filter an. Bei der Eingabe von "swiss" erscheinen unter anderem: * Landeskarte farbig " SwissFederalGeoportal.NationalMapColor" * Landeskarte grau "SwissFederalGeoportal.NationalMapGrey": * "OSM.ch Swiss Style" Das QMS-Plugin in QGIS bietet jedoch auch die Möglichkeit, Filter by extent zu verwenden. Bei dieser Methode wird der Kartenausschnitt, welcher im QGIS Anzeigefenster sichtbar ist, nach verfügbaren Servicen gefiltert. Diese werden dann in 3 Kategorien eingeteilt ('works', 'problematic' und 'failed'). Ebenfalls ist eine Vorschau des Service möglich und die Details können angezeigt werden. ### Suche für Fortgeschrittene 1. Suche auf opendata.swiss: https://opendata.swiss 2. Google Dataset Search: https://datasetsearch.research.google.com/ 3. Google-Suche für Fortgeschrittene z.B. mit "allinurl:service inurl:ch WMS" und dann im Browser oder in QGIS eingeben. Stefan's ausgewählte Datensätze (tbc.): * OpenEnergyData. https://github.com/SFOE/open_energy_data/blob/master/open_energy_data.md (vom BFE) * GIS Kt. ZH: https://maps.zh.ch/ => WMS der Bodenkarte der Landwirtschaftsflächen Kt. ZH * Swisstopo ff.: https://www.swisstopo.admin.ch/de/geodata/images/ortho.html => WMST entnehmen * Via Opendata.swiss: https://opendata.swiss/de/dataset/swissalti3d-reliefschattierung-multidirektionalswissALTI3D => multidirektionales Relief * Die u.a. hier verwendeten Beispiele von Datenquellen sind: ** WMS: Bodenkarte der Landwirtschaftsflächen Kt. ZH URL http://wms.zh.ch/OGDBoKaZH, Webbarte https://maps.zh.ch?topic=BoKaZH&scale=1780&x=2700008.49&y=1233063.84&srid=2056 , Metadaten https://www.geolion.zh.ch/geodatensatz/show?gdsid=92 , * WMS: ÖREB-Kataster (öffentlich-rechtliche Eigentumsbeschränkungen) Kt. ZH Metadaten https://www.geolion.zh.ch/geodatenservice/2028 * WMS: Digitales Terrainmodell (DTM) - 2017/2018 Kt. ZH Karte https://maps.zh.ch/s/k6d5p42f Metadaten https://www.geolion.zh.ch/geodatensatz/show?gdsid=520 * GeoTIFF: osmviews.tiff Welt * Swisstopo WMS: https://wms.geo.admin.ch/ * Vereinfachte Bodennutzung * Geotechnische Karte 200 * Hanglagen ### Rasterdaten-Service gefunden - Wie nun (in QGIS) weiter? Gegeben Sie haben einen Raster-Service - d.h. eine Basis-URL für einen WMS/WMTS/XYZ - gefunden, dann stellt sich als nächstes die Frage, wie man auf diesen in QGIS zugreift. Dafür wurde u.a. das QGIS-Plugin 'Raster Cutter' entwickelt. Wie dieses funktioniert, ist im [Kapitel 5 oben](#5-Wie-auf-Rasterdaten-zugreifen-und-einen-Ausschnitt-davon-herunterladen) dokumentiert. Doch es gibt immer noch einerseits natürlich die in QGIS eingebaute Funktionalität, das bereits erwähnte QMS-Plugin sowie folgende Plugins, die nützlich sein können: * Download von **Swisstopo- bzw. Swiss Geo Admin-Daten** mit dem QGIS-Plugin "[Swiss Geo Downloader](https://plugins.qgis.org/plugins/swissgeodownloader/)". * Download von **Satellitenbildern (v.a. NASA und ESA)** mit dem QGIS-Plugin "[STAC API Browser](https://plugins.qgis.org/plugins/qgis_stac/)". <!-- ANHANG: Glossar --> *[GIS]: Geografisches Informationssystem. *[CAD]: Computer Aided Design (-System). *[QGIS]: (Desktop) Geographisches Informations-System. *[Lexocad]: Software für 3D-Lösungen. *[Feature]: GIS-Objekt mit einer Geoometrie und Sachattributen. *[Layer]: Eine Ebene (Layer) ist in einem GIS eine Möglichkeit, gleiche oder zusammengehörende raumbezogene Objekte zusammenzufassen. Ein L. bezieht typischerweise Daten aus einer Tabelle. *[Luftbild]: Ein Pixelbild, das entzerrt und verortet ist. *[World-File]: Kleine Textdatei, die Georeferenzdaten eines Bildes enthält. *[Sidecar]: Filialdatei (englisch 'sidecar file'), eine ergänzende Datei mit gleichem Namen. *[OSM]: OpenStreetMap - das Wikipedia der Landkarte. www.openstreetmap.org *[OGD]: Open Government Data (deutsch: Offene Behördendaten); Unterkategorie von offenen Daten. *[KRS]: Koordinatenbezugssystem. *[URL]: Die Adresse einer Webseite. *[WMS]: Web Map Service. *[WMTS]: Web Map Tile Service de-jure standardisiert durch das OGC Consortium. *[XYZ]: Web Map Tile Service de-facto standardisiert durch Google Maps/OpenStreetMap. *[GeoTIFF]: Spezielle Form eines TIFF-Bildes. *[JPG]: Datei Format für Bilder. *[PNG]: Rastergrafikformat mit verlustfreier Datenkompression. *[JPGL]: ... *[JPW]: ... *[PNGL]: ... *[PGW]: ... *[TIF]: Taggedd Image File Format. *[TMS]: Tiles Map Service. *[KRS]: Abkürzung für Koordinaten-Referenz-System (englisch CRS). *[World-File]: Kleine Textdatei, die Georeferenzdaten eines Bildes enthält. Dieses Sidecar-Datei wurde vom Unternehmen ESRI als Ergänzung für einfache Bildformate wie PNG/JPG eingeführt. :::info **Dank und Kontakt**: Dieses Dokument wurde erstellt mit grosszügiger Unterstützung der Cadwork Informatik CI AG (Basel). ::: ## ANHANG: QGIS-Dialoge für Rasterdaten-Download Hier zur Info die modalen Dialoge in QGIS der drei QGIS-Funktionen, die mit dem Erstellen von Ausschnitten aus Rasterbildern zu tun haben: ![](https://md.coredump.ch/uploads/upload_20a01cfa6a3721873b0aa6c4027059d2.png) _Abbildung 7: Layer Export._ ![](https://md.coredump.ch/uploads/upload_214f357a403a4f1883febb8867f18c61.png) _Abbildung 8: Raster transformieren._ ![](https://md.coredump.ch/uploads/upload_d5c2e48bbc25b66571019e15b9b1b8d1.png) _Abbildung 9: Print-Layout als Bild speichern._ --- <!-- # NOTIZEN Notizen des Programmier-Teams: Tests mit folgenden Inputs: * WMS: Bodenkarte Kt. ZH > Kartiereinheit (klassiertes Bild): ```http://wms.zh.ch/OGDBoKaZH``` * WMS: Übersichtsplan Kt.ZH (Grauwerte): ```http://wms.zh.ch/upwms``` * WMTS: "GeoAdminCH" > SWISSIMAGE Hintergrund / LV95/CH1903+(EPSG:2056): ```https://wmts.geo.admin.ch/EPSG/2056/1.0.0/WMTSCapabilities.xml``` (Es kommt aber noch "CRITICAL Error : Exception: IReadBlock failed at X offset 34372, Y offset 7786: GDALWMS: The server returned unknown exception.") * XYZ: swissIMAGE ```https://wmts.geo.admin.ch/1.0.0/ch.swisstopo.swissimage/default/current/3857/{z}/{x}/{y}.jpeg``` * GeoTIFF: osmviews (weltweit): ```https://qrank.wmcloud.org/download/osmviews.tiff``` (~378MB) * mit Linux und Mac Erledigt: * 2. Besseres Icon (Raster, Schere) - und auch im Dialog links oben verwenden. * 4. Wenn Dateiname z.B. heisst "cropped.test.png", gibt es einen Error: ```Exception: [Errno 2] No such file or directory: 'C:\\Users\\sfkeller\\Downloads\\uep_kt_zh_eichwis_cut.wld'``` * 5. Checked checkbox: "```[x] Add saved file to map```" hinzufügen (analog "Layer Export" Dialog) * 6. Warum brauchts "Translate raster..." in raster_cutter.py - doch nur wenn Set custom resolution (target_res) gesetzt ist? * 7. Warum "warped = None"? Warum nicht auch "cropped = None" https://github.com/geometalab/qgis-raster-cutter/blob/main/raster_cutter.py#L342 * 8. Variablen _res => _resolution * 9. Variable on_lexocad_toggeled => on_lexocad_toggled * 10. CRS input im Dialog mehr rechts, bündig mit den anderen zwei Pulldown-Menus * 11. GeoTIFF output * 12. XYZ/TMS input - vgl. https://gis.stackexchange.com/questions/434149/pyqgis-generate-wms-service-description-xml-for-tms-service * 13. GeoTIFF input * 15. Was passiert, wenn GDAL nicht installiert ist (was beim Mac vorkommen kann) beim Aufruf von gdal.Warp(), gdal.Translate()- sehe da kein raise? * 16. Was passiert, wenn das Plugin bei "generate_lexocad_files()" keine Schreibrechte hat - sehe da kein raise? https://github.com/geometalab/qgis-raster-cutter/blob/10af38a662620f408ff0ffb583d5461759ad73f5/raster_cutter.py#L403 * 17. Der ausgeschnittene Bereich beim Test mit Übersichtsplan war sichtbar schlechter als der Input. => Das kann am Massstab liegen, ganz sicher liegt es aber am Resampling! Daher: Neue Zeile unterhalb "Resoltion" in den Dialog einbauen: "```Resampling algorithm [X] Nearest Neighbor [ ] Cubic Spline```". Nearest Neighbor ist default. Hover text "Nearest Neighbor": "Suitable for categorical/classified "mono or full color" data. Pixel neighbor value is used without modification. Hover text "Cubic Spline": "Suitable for continuous "gray tone" data. Values are interpolated". * 18. Log "SUCCESS Layer Exported : Successfully saved raster layer to C:\Users\sfkeller\Downloads\QGIS-Plugin_Raster_Cutter\layer_export_text.tif" zusammen mit "QGIS User Message". * 19. ERROR HTTP 403 abfangen (und allgemein GDAL Errors?). * 20. OS-spezifischer Path Delimiter einbauen (Froward/backward Slash) * 21. Menu Raster und der gleiche Text wie Dialog "Cut out Raster Layer to..." * 22. File overwrite checken * 23. Input Layer sollte nur Layer aus dem Projekt darstellen, die Raster sind. * "INFO Success : Layer exported to C:\Users\sfkeller\cropped.png" => "INFO Success : Layer [Layername] exported to C:\Users\sfkeller\cropped.png" Erweiterungsmöglichkeiten des QGIS-Plugin Raster Cutter * 20. "ArcGIS REST Map Services" als Input, z.B. einer von hier https://www.google.com/search?q=allinurl:service+arcgis+rest+services (sowie einer von geodata2use OST). * Default "Output Filename" besser <<Input_Name>>+"cropped.png" - und das als Konstante ganz zu Beginn des Codes. (beinhaltet viele Edge-Cases) * Auch als "Geoprocessing Tool" verfügbar machen (wohl nicht nötig). /END-OF-TODO --- VectorWorks: https://vectorworks-hilfe.computerworks.eu/2018/index.htm#t=VW_2018_Handbuch_Vectorworks%2FImport_Export%2FVectorworks_23-.htm AutoCAD: ? ## Mock GUI vom Raster Cutter Plugin ``` |---------------------------------------------| | Save Raster Image as... X | |---------------------------------------------| | Input | | Layer [osmviews_ch.tiff [EPSG:3857________] | | | | Clipping extent | | North [__________] | | West [_________] East [__________] | | South [__________] | | [from Layer] [Map Canvas] [Draw on Canvas] | | ------------------------------------------- | | | | Output | | File name/path [osmviews_ch.png_______][v] | | | | [x] Create World-File (.pnw, .jpw, ...) | | [_] Create LexoCAD (EPSG:2057, .jpgl/.pngl) | Sobald angeklickt, wechselt "Output CRS" auf 2057 (und jpg oder png) | | | CRS [EPSG:3857________________________] [v] | Default "Output CRS = Input CRS". Dialog siehe Notizen unten. | | | Resolution (m) x [__] y [__] | Tbd. Sollte default haben. | | | [ OK ] [Cancel] [Help] | |---------------------------------------------| ``` _Bild: Mock GUI des QGIS-Plugin 'Raster Cutter' (Vorlage für Qt Creator)._ ## Verbesserungvorschläge aus den Peer-Reviews 2022 * Location der Verschiedenen Methoden kann leicht übersehen werden an der momentanen Position * Begriffe wie die EPSG 2056 genauer beschreiben * Markdown des Mockups und der Funktionen des RIC ### QGIS Export as TIFF: Export Layer > Save as... Probleme: * Parameter Resolution: Set Create VRT off, CRS 2056, Extent, Resolution 1 (meters). * Unklar, ob das die geeignete/beste Zoom-Stufe ist/war. * nur GeoTIFF nutzbar, kein JPG, PNG Weitere Möglichkeiten: ### Mit WMS GetMap direkt als TIF speichern Hints: https://gis.stackexchange.com/questions/305663/save-wms-layer-to-tiff-raster Probleme: * Parameter berechnen * (Server muss grosse Bereiche unterstützen) * You must georeference it. * Beispiel-Aufruf eines WMS im Browser: ÜP Kt.ZH http://wms.zh.ch/upwms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&BBOX=698522,232965,701777,235179&WIDTH=10000&HEIGHT=7000&FORMAT=image/png&LAYERS=upwms&CRS=EPSG:21781 Mit QGIS Plugin BoundingBox: * Returns the xmin, ymin, xmax, ymax of the current view window, and the GetMap request of the selected WMS. * Tipps: https://github.com/Maaka2890/BBox3 * Probleme: Works only if QGIS locale is set to English (Metadata keyword search) -->