Da der QGIS Graphical Modeler Calculator nicht zu einer Antwort geführt hat, werde ich hier mein Glück noch einmal versuchen. Ich habe in QGIS 2.18.16 ein einfaches Modell erstellt, das eine Entfernung basierend auf der Ausdehnung eines Rasters und einer bestimmten Anzahl von Unterteilungen berechnet, die vom Benutzer als Parameter festgelegt werden. Grundsätzlich soll es dem Fishnet-Tool von ArcGIS ähneln. Das Modell sieht folgendermaßen aus:
Die Beschreibung im Taschenrechner sagt mir Folgendes:
Demnach habe ich meine Formel wie folgt eingerichtet:
(e - d) / b # this should give me the segment length
(g - f) / a # this should give me the segment height
Das Protokoll aus dem Modelllauf gibt mir dann die folgende Fehlermeldung:
Parameters:
FORMULA =(g-f)/a,
NUMBER0 =2,
NUMBER1 =3125884.941,
NUMBER2 =3135324.941,
NUMBER3 =None, NUMBER4 =None, NUMBER5 =None, NUMBER6 =None, NUMBER7 =None, NUMBER8 =None, NUMBER9 =None
Failed
Error executing algorithm Calculator Wrong formula: (None-None)/2
Leider ist die Dokumentation leer. Kann mir jemand sagen, wie man die Variablen richtig einrichtet?
qgis
qgis-modeler
s6hebern
quelle
quelle
Antworten:
Ich denke, dies ist ein Problem mit dem Code in der Datei (für mich ist der Pfad :)
/QGIS 2.18/apps/qgis/python/plugins/processing/modeler/CalculatorModelerAlgorithm.py
. Es scheint, dass der Code beim Ausführen des Algorithmus alle verfügbaren Variablen (dh) durchläuft10
und ihnen den entsprechenden Wert zuweist.Dies scheint jedoch nur zu funktionieren, wenn alle Variablen in Ihrer Formel angegeben sind. Andernfalls wird nur den in Ihrer Formel enthaltenen Variablen ein Parameter (
NUMBERX
) zugewiesen . Dh aus deinem Log:Eine schnelle Lösung besteht darin, Ihre Formel zu schreiben und alle Variablen einzuschließen, die nicht verwendet werden, indem Sie sie mit multiplizieren
0
.Versuchen Sie also für Ihren ersten Taschenrechner Folgendes zu ersetzen:
mit:
Versuchen Sie für Ihren zweiten Taschenrechner Folgendes zu ersetzen:
mit:
quelle
Ich denke, dieses Plugin "Create Indexed Vector Grid" kann Ihnen helfen.
quelle