Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Vorverarbeitung mit QGIS

The first steps in numerical modeling of a river with BASEMENT consist in the conversion of a Digital Elevation Model (Digitales Oberflächenmodell) into a computational mesh. This tutorial guides through the creation of a QGIS project for converting a Digitales Oberflächenmodell (GeoTIFF) into a computational mesh that can be used with various numerical modeling software featured in this eBook. At the end of this tutorial, GRUNDLAGE users will have generated a computational grid in the SMS 2dm format.

QGIS Setup

Koordinatenreferenzsystem (Koordinatenreferenzsystem)

Launch QGIS and create a new QGIS project to get started with this tutorial. As featured in the QGIS Tutorial, set up a coordinate reference system (CRS) for the project. This example uses data of a river in Bavaria (Germany zone 4), which requires the following CRS:

qgis set coordinate reference system crs germany zone_4 Inn river

Figure 1:Definieren Sie Germany Zone 4 als Projekt Koordinatenreferenzsystem.

Holen Sie sich das BASEmesh Plugin

Installieren Sie BASEMENTs BASEmesh Plugin (Anleitung aus dem BASEMENT Systemhandbuch):

qgis basement plugins

Figure 2:Fügen Sie das BASEMENT-Repository zum QGIS Plugins Manager hinzu.

qgis basement plugins

Figure 3:Das BASEmesh 2-Plugin ist nach der erfolgreichen Installation im Plugin-Menü von QGIS verfügbar.

Belastung Digitales Oberflächenmodell (DOM)

This tutorial uses an application-ready Digitales Oberflächenmodell in GeoTIFF Gitterzellendaten (Raster) format that stems from a Lidar point cloud. The Digitales Oberflächenmodell raster provides height (Z) information from a section of a gravel-cobble bed river in South-East Germany, which constitutes the baseline for the computational grids featured in the next sections. To get the provided DEM in the QGIS project:

Die Digitales Oberflächenmodell (DOM) sollte nun auf der Karte angezeigt werden (falls nicht: mit der rechten Maustaste auf der Digitales Oberflächenmodell (DOM)-Ebene und klicken Sie auf Zoom zu Layer(s) im Kontextmenü), wie unter Fig. 4 gezeigt.

qgis import raster DEM basemap

Figure 4:Die importierte Digitales Oberflächenmodell (DOM) auf einer Google Satellite Imagery Basemap (Quelle: Google / GeoBasis-DEBKG 2019). Die Strömungsrichtung verläuft von links nach rechts und folgt dem Pfeil Q.

2dm Mesh erstellen

The generation of a SMS 2dm uses the QGIS BASEmesh plugin and requires drawing a

These shapefiles enable to generate a Quality Mesh. Ultimately, height information is interpolated to the quality mesh and the resulting mesh is saved as SMS 2dm file. The next sections walk through the procedure step by step with detailed explanations. Additional materials and intermediate data products are provided in the supplemental data repository (materials-bm) for this tutorial.

Modellgrenzen und Breaklines

The model boundary defines the model extent and can be divided into regions with different characteristics (e.g., roughness values) through breaklines. Breaklines indicate, for instance, channel banks and the riverbed (main channel), and need to be inside the DEM extents. Boundary lines and breaklines are stored in a Line Shapefile that BASEmesh uses to find both model boundaries and internal breaklines between model regions. For this purpose, Erstellen Sie ein Line Shapefile with one Text Field called LineType and call it breaklines.shp (Layer > Create Layer > New Shapefile Layer). Click on QGIS’ Layers menu > Create Layer > New Shapefile Layer... (see Fig. 5). Make sure to select ESRI: 31494 - Germany_Zone_4 as Koordinatenreferenzsystem .

qgis new layer basemesh

Figure 5:Erstellen Sie ein neues Shapefile aus dem QGIS Layers-Menü.

Es ist wichtig, dass sich die Linien nicht überschneiden, um mehrdeutige oder fehlende Definitionen von Regionen zu vermeiden und sicherzustellen, dass alle Grenzlinien geschlossene Regionen (Gebiete) bilden. Aktivieren Sie daher Snapping:

Next, start to edit breaklines.shp by clicking on the yellow pen and draw the lines indicated in Fig. 6 by activating Add Line Feature .

To correct drawing errors use the Vertex Tool . Finally, save the new lines (edits of breaklines.shp) by clicking on the Save Layer Edits symbol. Stop (Toggle) Editing by clicking again on the yellow pen symbol.

qgis basement basemesh draw breaklines boundaries

Figure 6:Grenze und Bruchlinien, um breaklines.shp zu zeichnen. Links und rechts Ufer und Auen sind in Strömungsrichtung orientiert (Q Pfeil).

Der Standard-Layer-Stil ist Single Symbol. Zur besseren Darstellung doppelklicken Sie auf die Trennlinienebene, gehen Sie auf die Registerkarte Symbology und wählen Sie Categorized (oder Graduated) anstelle von Single Symbol (ganz oben im Fenster Layer Properties). Wählen Sie im Feld Value LineType und klicken Sie dann auf die Schaltfläche classify am unteren Rand des Fensters Layer Properties. In der Liste werden nun die LineType-Werte angezeigt.

Flüssige (hydraulische) Grenzen

Die Flüssigkeitsgrenzen definieren, wo hydraulische Bedingungen, wie eine gegebene Entladungs- oder Stufenentladungsbeziehung, an den Modellzufluss- (stromaufwärts) und -abflussgrenzen (stromabwärts) gelten. Daher erfordert ein funktionales Flussmodell mindestens eine Zuflussgrenze (Linie), an der der Massenstrom in das Modell fließt, und eine Abflussgrenze (Linie), an der Massenströme das Modell verlassen. Zu diesem Zweck hat Erstellen Sie ein Line Shapefile liquid-boundaries.shp aufgerufen und definiert zwei Textdatenfelder mit den Namen type und stringdef. Stellen Sie sicher, dass **snapping ** immer noch ** aktiviert ist ** (wie oben im Abschnitt Modellgrenzen und Breaklines erklärt) und **Toggle (Start) Editing ** das neue **liquid-boundaries.shp **. Zeichne dann zwei Linien:

qgis basemesh draw inflow boundary line

Figure 7:Die Einströmbegrenzungslinie ist von links nach rechts gezeichnet (d.h. die stromaufwärtige Strömung kommt von der rechten Seite der Einströmbegrenzungslinie). Die Reihenfolge der zu verwendenden Tasten wird durch die roten Boxen hervorgehoben.

qgis basemesh draw outflow boundary line

Figure 8:Die Abflussbegrenzungslinie ist von oben nach unten gezeichnet (d.h. die stromaufwärtige Strömung kommt von der rechten Seite der Abflussbegrenzungslinie).

Speichern Sie schließlich die flüssigen Grenzlinien (Bearbeitungen von liquid-boundaries.shp), indem Sie auf das Layer Edits Symbol klicken. Stop (Toggle) Editing durch erneutes Klicken auf den gelben Stift Symbol.

Regionsmarkierungen

Regionsmarker werden innerhalb von Regionen platziert, die durch Grenzlinien und Bruchlinien definiert sind. Jeder Regionsmarker (d.h. ein Punkt irgendwo im Regionsbereich) weist beispielsweise eine Materialkennung (MATIDs) und eine maximale Mesh-Zellfläche zu. Die letztere Option ermöglicht es, kleine Maschenzellen (Maschenbereiche) im aktiven Kanalbett zu definieren und größere Zellbereiche in den Auenregionen. Erstellen Sie ein Point Shapefile benannt raster-points.shp mit den folgenden Definitionen (siehe auch Fig. 9):

basement mesh qgis region layer points

Figure 9:Definitionen und Felder, die der Region-Points Shapefile hinzugefügt werden sollen.

Consider to deactivate snapping for drawing the region markers to avoid that region markers coincide with any line. Then, Toggle (Start) Editing the new region-points.shp file and activate Add Point Feature . Draw one point in every area section that is enclosed by breaklines and (liquid) boundary lines. Depending on the apparent area type from the satellite imagery basemap, assign one of the five regions listed in Tab. 1 to every point.

Table 1:Region names and their max_area, MATID, and type field values.

Region

Flussbett

Blockrampen

Grasbanken

Überschwemmungsgebiete

Sand

max area

25,0

20.0

25,0

80,0

20.0

MATID

1

2

3

4

5

Typ

Flussbett

block ramp

gravel bank

Überschwemmungsgebiet

Sand Einlage

Nachdem Sie in jedem geschlossenen Bereich einen Punkt gezeichnet haben, speichern Sie die Regionspunktmarkierungen (Bearbeitungen von region-points.shp), indem Sie auf das Layer Edits Symbol klicken. Stop (Toggle) Bearbeiten, indem Sie erneut auf den gelben Stift klicken. Figure 10 zeigt ein Beispiel für Regionsmarkerpunkte innerhalb der durch die Bruchlinien abgegrenzten Bereiche.

basemesh region points

Figure 10:Beispiel für Regionspunktmarkierungen in den Projektgrenzen.

Erstellen Sie ein Quality Mesh

BASEmesh’s quality mesh tool creates a computationally efficient triangular mesh based on Shewchuk (1996) and within the above-defined model boundaries. The tool associates mesh properties with the regions shapefile ([see above section on Regionsmarkierungen), but it does not include elevation data. Thus, after generating a quality mesh, elevation information needs to be added. This section explains the quality mesh generation and the next section features the interpolation of bottom elevations.

Klicken Sie im Menü von QGIS Plugins auf BASEmesh 2 > QUALITÄTSMESHING, um das Qualitäts-Mesh-Tool zu öffnen. Führen Sie die folgenden Einstellungen im Popup-Fenster aus (siehe auch Fig. 11):

basement qgis quality mesh tin

Figure 11:Definitionen, die in BASEmeshs Quality Meshing Tool gemacht werden müssen.

Qualitätsverzahnung kann Zeit in Anspruch nehmen. Nach einer erfolgreichen Mesh-Generierung wurde die Datei prepro-tutorial quality-mesh-interp.2dm generiert.

Interpolieren Sie Bottom Elevation zu Quality Mesh

The BASEmesh plugin’s Interpolation tool projects bottom elevation data onto the quality mesh by interpolation from another mesh or a Digitales Oberflächenmodell Gitterzellendaten (Raster). Here, we use the above-introduced DEM GeoTIFF. To run the interpolation, open BASEmesh’s Interpolation tool (QGIS Plugins menu > BASEmesh 2 > Interpolation) and make the following settings (see also Fig. 12):

qgis quality mesh interpolation basement

Figure 12:BASEmeshs Z-Wert (Höhe) Interpolationswerkzeug und Setup, um dem Qualitätsnetz untere Höhenwerte zuzuweisen.

Stellen Sie nach der Höheninterpolation sicher, dass die Höhen korrekt zugewiesen sind (dh die Bed Elevation sollte Werte zwischen 367 und 387 m a.s.l. angenommen haben). Um die Layer-Visualisierung (Symbologie) zu ändern, doppelklicken Sie auf das neue prepro-tutorial quality-mesh-interp und gehen Sie zum Symbology-Band. Wählen Sie Graduated ganz oben im Fenster, setzen Sie den Wert auf Z, Methode auf COLOR, wählen Sie eine Farbrampe und klicken Sie auf den classify unten (unterer Teil des Fensters). Klicken Sie auf Apply und OK, um die Symbolisierungseinstellungen zu schließen. Figure 13 zeigt eine Beispielvisualisierung des höheninterpolierten Gitters.

basemesh verify interpolated quality mesh

Figure 13:Überprüfen Sie die Höheninterpolation mit Hilfe von abgestuften Farbrampen.

Nutzung mit BASEMENT

The 2dm mesh file produced in this tutorial can be directly used with GRUNDLAGE, where only the definition of properties of the geometric (e.g., roughness coefficients) and liquid (e.g., discharges) are required as explained later.

References
  1. Shewchuk, J. R. (1996). Triangle: Engineering a 2D quality mesh generator and Delaunay triangulator. In M. C. Lin & D. Manocha (Eds.), Applied Computational Geometry Towards Geometric Engineering (pp. 203–222). Springer. 10.1007/BFb0014497