QGIS-Tipp: Koordinaten vom Anfang & Ende einer Linie

Immer mal wieder gefragt: Wie werden in QGIS die Anfangs- und End-Koordinaten einer Linie ermittelt? Die Antwort: Einfach durch Nutzung der Geometrie-Funktionen: $x_at, $y_at mit Index „0“ für Beginn der Linien und Index „-1“ für das Linienende. Damit kann man z. B. Beschriften oder neue Tabellenspalten anlegen, hier z. B. mal alle vier Werte zusammen in einer Zeichenkette:

'begin: '|| $x_at(0) ||', '|| $y_at(0) ||'\n'||' end:' || $x_at(-1) ||', '|| $y_at(-1)

Ich hab damit mal “gespielt” und einen QGIS-Stile [1] erzeugt, der für jede Linie alle Stützpunkte mit schwarzen Kreuzen darstellt und den Beginn der Linie rot und deren Ende grün markiert und diese dann jeweils auch rot und grün mit deren Koordinaten beschriftet.

QGIS_Line_Coordinates_Begin_End_Style_1.png
Bild 1: QGIS-Gesamtansicht mit rotem Beginn und grünem Ende mit Koordinaten-Text

Der Trick an den Linienenden: regelbasierte Beschriftung mit zwei Regeln, eine für den Beginn und eine für das Ende mit dem entsprechenden Text-Eintrag, hier der Ausdruck für das Linienende:

$x_at(-1) || '\n' || $y_at(-1)

QGIS_Line_Coordinates_Begin_End_Style_2.png
Bild 2: Regelbasierte Beschriftung

Den Standort der Beschriftung gibt man über den Geometriegenerator (anhaken!) in jeder Regel an, hier z. B. die Formel für das Linienende:

make_point($x_at(-1),$y_at(-1))

QGIS_Line_Coordinates_Begin_End_Style_3.pngBild 3: Setzen des Endpunktes für die Beschriftung mit dem Geometriegenerator

Natürlich können die Formeln nach eigenem Wunsch angepasst werden, z. B. zum Runden der Koordinaten, also hier für drei Nachkommastellen:

round($x_at( 0),3) || '\n' || round($y_at( 0),3)

Die QGIS-Style-Datei [1] kann gern herunter geladen und nachgenutzt werden.

[1] … http://www.geoobserver.de/QGIS_Line_Coordinates_Begin_End_Style.qml

Update 30.06.2023: Siehe Kommentar vom 30.06.2023

Einfach den Feldrechner benutzen und entweder alle vier Koordinaten in einzelne Spalten berechnen oder in eine gemeinsame, z. B. so:

$x_at(0) || ';' || $y_at(0) || ';' || $x_at(-1) || ';' || $y_at(-1)

Bild 4: Koordinaten der Linienenden in die Sachdatentabelle über den Feldrechner einfügen

9 Gedanken zu „QGIS-Tipp: Koordinaten vom Anfang & Ende einer Linie

  1. Sir ….I don’t understand any of these. I use QGIS, but what are you trying to do here. Can u plz direct me to any tutorial or something that briefly explains about what happened here.

  2. Danke für die vielen guten Tipps – und gerade jetzt für diesen! Manchmal muss ich lange suchen und überlegen, wie ein Problem anzugehen – und hier ist ein schöner Lösungsansatz, den ich auch gleich in QGIS umsetzen konnte!

  3. Ich konnte den Ansatz gut nachvollziehen und anwenden. Allerdings möchte ich die generierten Koordinaten exportieren. Am besten in ein csv oder excel file. Wäre toll dazu noch einen Tip zu erhalten…

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert