[FOSSGIS-Talk] Verwendung des Model Designer für die automatisierte Selektion nach Position und Ausdruck
Frederik-Matti Bartels (CAPSA)
bartels at capsa-building.org
Mi Mai 22 07:07:34 CEST 2024
Guten Morgen FOSSGIS-Liste,
ich wende mich an Sie, da ich bereits mehrere Tage damit verbracht habe StackExchange und ChatGPT zu bemühen, dabei jedoch keine effektive Lösung für die folgende Problemstellung in QGIS (3.34.7-Prizren) mit dem Model Designer finden konnte.
Aufgabe:
* Es müssen die Daten von Fenstern (Anzahl, Höhe, Breite) in die zugehörigen Wände eingetragen werden, was eine vorherige Zuordnung vorrausetzt. Hierbei sollen die Puffer der Fenster den räumlichen Bezug zu den Wänden herstellen und ein vorhandene Gradangabe, welche für die Fenster und Wände nahezu identisch ist, als Kontrollkriterium eine falsche Zuordnung bei dem Überlappen der Puffer von zwei Wänden verhindern.
Datenlage:
* Mir liegen die Daten von Hausumringen sowie der in diesen Häusern verbauten Fenster vor.
* Die Hausumringe sind bereits in einzelne Wände aufgeteilt worden und die Fenster weisen bereits jeweils einen Puffer auf.
* Sowohl Fenster als auch Wände weisen bereits eine vereinheitlichte Gradangabe für die Ausrichtung nach Norden auf.
[cid:image005.png at 01DAAC12.854FA8B0]
Bereits erfolgte Schritte zum Lösungsansatz:
* Erstellen eines Models bei dem durch die Wände, welche als "Vektorobjekte" vorliegen, einzeln iteriert wird. Die Puffer werden als "Vektorlayer" eingebunden.
* Es erfolgt zuerst ein "Nach Position extrahieren" der Fensterpuffer, wobei die Puffer aber auch Wände miteinschließen können, welche keine zu den Fenstern identische Gradangabe aufweisen.
Fehlende Schritte im Lösungsansatz:
* Erstellen des "Nach Ausdruck extrahieren", was für alle separaten Iterationsschritte gültig ist, wobei die Gradangaben - innerhalb einer bestimmten Toleranzgrenze (z. B. +/- 10°) - zwischen der aktuell iterierten Wand und den zuvor selektierten Puffern miteinander verglichen werden sollen
[cid:image006.png at 01DAAC15.471A0830]
Das Problem, das sich mir hierbei stellt, ist, dass es sich um eine dynamische Auswahl handelt, da ich durch die Iteration immer unterschiedliche Gradangaben, für jede Wand individuell, vorliegen und ich nicht weiß, wie ich dieses in einem entsprechenden Ausdruck darstellen kann (z. B. ob es eine Möglichkeit gibt die Gradangabe zuvor aus der Attributstabelle zu extrahieren, was wohl mit dem Feldrechner möglich sein soll, welcher dann aber einen ganzen Layer als Ausgabe präsentiert).
Ich weiß, dass dynamischen Variablen z. B. bei der Verwendung des Atlas durch @atlas-geometry, etc. existieren. Mir ist jedoch nicht bekannt und ich konnte auch nicht herausfinden, ob dieses im Ausdrucks-Editor mit "get_feature", "aggregate" oder Ähnlichem möglich ist. Vielleicht ist "@element" in Verbindung mit mit "aggregate" zu verwenden? Leider reicht mein Wissen in dieser Hinsicht nicht aus, um einen entsprechenden Ausdruck zu erstellen.
Ich würde mich über Hinweise freuen und bin für jede Hilfestellung dankbar, auch wenn es darauf hinauslaufen sollte, dass ich mich erneut mit Python auseinandersetzen müsste, wenn eine entsprechende Automatisierung im Model Designer nicht möglich ist.;)
Vielen Dank im Voraus und ich wünsche Ihnen allen noch einen angenehmen Tag,
Frederik-Matti Bartels
[A picture containing text, clipart Description automatically generated]
c/o ChillServices GmbH
Gross-Buchholzer Kirchweg 72D
30655 Hannover, Germany
Reg. at Local Court Hannover: HRB 214 606
VAT ID: DE 309 727 172
[cidimage008.jpg at 01D6FA44.58AAB170] +49 511 8989 1550
[cidimage009.png at 01D6FA44.58AAB170] bartels at capsa-building.org<mailto:bartels at capsa-building.org>
[cidimage010.jpg at 01D6FA44.58AAB170] https://capsa-building.org<https://capsa-building.org/>
CONFIDENTIALITY: This e-mail and any attachments are confidential and may be privileged. If you are not a named recipient, please notify the sender immediately and do not disclose the contents to another person, do not use the contents for any other purpose and do not store/copy the information in any medium.
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : image001.png
Dateityp : image/png
Dateigröße : 10195 bytes
Beschreibung: image001.png
URL : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20240522/88f79a76/attachment.png>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : image002.jpg
Dateityp : image/jpeg
Dateigröße : 719 bytes
Beschreibung: image002.jpg
URL : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20240522/88f79a76/attachment.jpg>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : image003.png
Dateityp : image/png
Dateigröße : 500 bytes
Beschreibung: image003.png
URL : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20240522/88f79a76/attachment-0001.png>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : image004.jpg
Dateityp : image/jpeg
Dateigröße : 736 bytes
Beschreibung: image004.jpg
URL : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20240522/88f79a76/attachment-0001.jpg>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : image005.png
Dateityp : image/png
Dateigröße : 105245 bytes
Beschreibung: image005.png
URL : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20240522/88f79a76/attachment-0002.png>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : image006.png
Dateityp : image/png
Dateigröße : 20695 bytes
Beschreibung: image006.png
URL : <http://lists.fossgis.de/pipermail/fossgis-talk-liste/attachments/20240522/88f79a76/attachment-0003.png>
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste