Étant donné que la calculatrice de modélisation graphique QGIS n'a pas conduit à une réponse, je vais tenter ma chance ici encore. J'ai créé un modèle simple dans QGIS 2.18.16 qui calculera une distance basée sur l'étendue d'un raster et un nombre donné de divisions, défini par l'utilisateur comme paramètre. Fondamentalement, il doit ressembler à l'outil Fishnet d'ArcGIS. Le modèle ressemble à ceci:
La description dans la calculatrice me dit ce qui suit:
Selon cela, j'ai mis en place ma formule comme:
(e - d) / b # this should give me the segment length
(g - f) / a # this should give me the segment height
Le journal de l'exécution du modèle me donne alors le message d'erreur suivant:
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
Malheureusement, la documentation est vide. Quelqu'un peut-il me dire comment configurer correctement les variables?
qgis
qgis-modeler
s6hebern
la source
la source
Réponses:
Je pense que c'est un problème avec le code dans le fichier (pour moi, le chemin est:)
/QGIS 2.18/apps/qgis/python/plugins/processing/modeler/CalculatorModelerAlgorithm.py
. Il semble que lors de l'exécution de l'algorithme, le code parcourt toutes les variables disponibles (ce qui est10
) et leur attribue leur valeur correspondante.Mais cela ne semble fonctionner que si toutes les variables sont indiquées dans votre formule, sinon seules les variables incluses dans votre formule recevraient un paramètre (
NUMBERX
). C'est à dire de votre journal:Un remède rapide consiste à écrire votre formule et à inclure toutes les variables qui ne sont pas utilisées en les multipliant par
0
.Donc, pour votre première calculatrice, essayez de remplacer:
avec:
Et pour votre deuxième calculatrice, essayez de remplacer:
avec:
la source
Je pense que ce plugin "Créer une grille vectorielle indexée" peut vous aider.
la source