Ein GIS dient nicht nur der Darstellung von Geodaten, sondern kann auch konkrete Berechnungen zurückgeben. Eine typische Aufgabe ist die Berechnung einer Fläche (Polygon).
Ausgegangen wird von einem bestehenden Polygon-Layer (Abb. 1), in unserem Beispiel mit drei Flächen. Für diese sollen die Flächen berechnet werden.
Zunächst wird die Attributtabelle geöffnet und der Feldrechner gestartet (Abb. 1, roter Pfeil). Das geht auch mit der Tastenkombination Strg+I. Es ist NICHT notwendig, den Bearbeitungsmodus des Layers umzuschalten!
Im Feldrechner wird zunächst entschieden, ob ein neues Feld für die errechneten Werte angelegt werden soll, oder ob die Werte in einem bestehenden Feld überschrieben werden. Wir entscheiden uns hier für das neue Feld (Abb. 2, oberer roter Kreis). Als nächstes wird ein Feldname vergeben (»Flaeche«) und ein Feldtyp bestimmt. Der sollte selbstverständlich ein Zahlenfeld sein.
An dieser Stelle wird entschieden, ob ein Ganzzahl-Integer-Feld ausreicht, oder ob Kommastellen notwendig sind. Bei der Berechnung von Grundstücksflächen ist sicherlich die Exaktheit von Kommastellen sinnvoll; bei der Berechnung der Fläche eines Gletschers reicht es sicherlich auf den gerundeten Quadratmeter. Im Beispiel wählen wir »Integer«, also Ganzzahlen. Dementsprechend ist auch das Feld für die Genauigkeit (= Anzahl der Nachkommastellen) ausgegraut. Andernfalls wählt man einen Feldtyp wie »Dezimalzahl, real« (Abb. 2, roter Pfeil).
Nun zum Ausdruck: Das Kommando für die automatische Berechnung der Fläche lautet $area
Man findet es auch in der Mittelspalte in der Kategorie »Geometrie« (Abb. 2, unterer roter Kreis).
Nach Bestätigung des Feldrechners wird die berechnete Fläche in der Attributtabelle eingetragen (Abb. 3). Achtung! Die Flächengröße richtet sich in ihrer Einheit nach der Grundeinheit des Koordinatenbezugssystems! Das sind Meter, demnach erhalten wir als berechnete Flächen m²! Es kann sinnvoll sein, diese großen Werte eher als km² anzugeben. Dazu wird im Feldrechner dividiert:
$area/1000000
Das Ergebnis zeigt Abb. 4. Diesmal habe ich aber als Feldtyp »Dezimalzahl« ausgewählt. Hätte ich wieder »Integer« genommen, wären die Werte auf die Ganzzahl gerundet worden.
Achtung bei der Flächenberechnung: Liegen die Ausgangsdaten in einem geographischen Koordinatensystem (z.B. WGS 84) vor, müssen sie ggf. erst in ein projiziertes Koordinatensystem umgerechnet werden! Entsprechend gibt es im Feldrechner neben dem Ausdruck $area (berechnet ellipsoidal) auch den Ausdruck area (berechnet planimetrisch), in der Anwendung: area($geometry)
Nebenstehendes Beispiel geht davon aus, daß die Geodaten (z.B. Polygonflächen) in einem geographischen Koordinatensystem angelegt sind (im Beispiel: EPSG 4258). Sie sollen zur Flächenberechnung aber vorher in ein projiziertes Koordinatensystem (EPSG 25833) transformiert werden. Entsprechend schließt man die $geometry-Anweisung noch in eine transform-Klammer ein und gibt die umzuwandelnden Koordinatensysteme mittels EPSG-Nummer vor.
Auch hier sollte man ggf. noch durch 1000000 dividieren (siehe oben), wenn man das Ergebnis in km² statt m² benötigt. Das hängt aber von der Grundeinheit des verwendeten Projekt-Koordinatensystems ab und kann hier nicht pauschal vorgegeben werden.
Die Berechnung von Koordinatenpaaren für Punkt-Layer erfolgt analog zu der oben beschriebenen Vorgehensweise. Die Ausgangssituation ist in Abb. 5 dargestellt.
Wieder wird der Feldrechner geöffnet und entschieden:
Nun zum eigentlichen Befehl: Auch hier werden wir in der Kategorie »Geometrie« fündig: Zur Ausgabe von X-Werten dient $x
Entsprechend gilt für Y-Koordinaten (Hochwerte, Breitengrade) $y
Man beachte: Diesmal sind zwei Arbeitsschritte notwendig: Erst wird die eine Koordinate berechnet, dann wird die andere Koordinate berechnet. Abbildung 6 zeigt das Ergebnis.