Neulich kam mal die Frage auf “Gibt es im QGIS eine Möglichkeit, beim Digitalisieren von Layer1 gleich Sachdaten aus einem Layer2 in das Sachdatenformular für Layer1 zu übernehmen?”. Man kann nun suchen und ggf. viel Zeit damit verbringen oder man befragt mal kurz das Schwarmwissen, hier die FOSSGIS-Liste [1]. Ich habe mich für das Schwarmwissen entschieden und wie so oft war dann die Lösung schnell gefunden, ca. 8 Minuten hat es gedauert! Danke Schwarm, danke Stefan Giese [2]!.
Und so geht’s: Eigenschaften des Themas, das die Werte automatisch bekommen soll (hier “strassenabschnitt”), Attributformular, Sachdatenspalte, die Wert bekommen soll (hier “str”) wählen und folgenden Ausdruck bei “Ausdruck” einfügen:
array_first(overlay_intersects('strassennetz', "str"))
Also, überstreicht ein neu digitalisiertes Polygon in “strassenabschnitt” eine Straße in “strassennetz”, wird aus deren Sachdatenspalte “str” der Straßenname übernommen und im Formular von “strassenabschnitt” für die Spalte “str” vorgeschlagen. Überstreicht das neu erfasste Polygon mehrere Straßen des zweiten Themas, wird der erste gefundene Name ins Formular übernommen (“array_first”).
Mein kleines Testprojekt mit Daten zum Nachvollziehen findet Ihr unter QGIS_Digit_inkl_automatischer_sachdatenübernahme.zip [3]
[1] … https://lists.fossgis.de/pipermail/fossgis-talk-liste/2022-August/012143.html
[2] … https://files.wheregroup.com/index.php/s/i5YmE5KwR8HTBsD
[3] … https://www.geoobserver.de/Download/QGIS_Digit_inkl_automatischer_ sachdaten übernahme.zip