[FOSSGIS-Talk] QGIS - Flächenberechnung per Trigger für GeoPackage auch ellipsoidisch möglich?
Bernd Marcus
bmarcus at giswana.de
Di Okt 20 10:44:28 CEST 2026
Hallo Nane,
ein Blick in die Referenzliste der libspatialite Bibliothek (https://www.gaia-gis.it/gaia-sins/spatialite-sql-5.1.0.html#p8) offenbart, dass die Funktion
st_area() dank der RTTOPO Erweiterung auch die ellipsoide Fläche von Polygonen
berechnen kann. Allerdings müssen bei Verwendung von
ST_Area( s Surface , use_ellipsoid Boolean )
die Koordinaten in Längen- und Breitengraden vorliegen. Ist dies nicht der
Fall, wird NULL als Resultat zurückgegeben.
Liegen deine Polygone in einem metrischen Koordinatensystem vor, steht also
erst einmal eine Reprojektion der Geometrien an. Dies lässt sich natürlich
auch innerhablb eines Trigges realisieren, scheitert jedoch innerhalb eines
Geopackages, da die für die Transformation notwendige Meta-Tabelle
"spatial_ref_sys" nicht zur Verfügung steht.
Mit libspatialite lassen sich zwar Geopackages erstellen, abfragen und
manipulieren, die Bibliohek hatte allerdings nie den Anspruch, alle Funktionen
dieser räumlichen Erweiterung für SQLite auf Geopackages zu übertragen. Willst
du also den vollen Funktionsumfang von libspatialite ausschöpfen, so ist ein
Umstieg von Geopackage auf SpatiaLite unabdingbar.
Für deinen angefragten Anwendungsfall empfehle ich jedoch einen anderen
Ansatz. Anstatt mit ON INSERT, ON UPDATE Triggern rumzuhantieren, um die
Fläche eines Polygons zu berechnen, kannst du auch QGIS die Arbeit machen
lassen. Trage hierzu einfach $area als Vorgabewert für dein Flächenfeld im
Attribut Formular ein und aktiviere die Option zur Übernahme des Vorgabewertes
bei Aktualisierung. Dieses Vorgehen ist wesentlich einfacher und
pflegeleichter.
Schöne Grüße
Bernd
--
Ihnen eine gute Zeit
Bernd Marcus
__________________________
GISwana - Datentektonik
Am Steneberg 10 | D-37133 Friedland
T: +49 (0)5504 949 844 8
M: +49 (0)176 816 991 64
@: bmarcus at giswana.de
U: https://www.giswana.de/
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste