Étiquette | Explication | Type de données |
Expression d’algèbre spatiale | L'expression d'algèbre spatiale que vous souhaitez exécuter. L'expression est formulée en spécifiant les entrées, valeurs, opérateurs et outils à utiliser. Vous pouvez saisir l'expression directement ou utiliser les contrôles d'aide à la création.
| Raster Calculator Expression |
Raster en sortie | Raster en sortie résultant de l'expression d'algèbre spatiale. | Raster Dataset |
Disponible avec une licence Spatial Analyst.
Disponible avec une licence Image Analyst.
Synthèse
Crée et exécute une seule expression d’algèbre spatiale dans la syntaxe Python.
En savoir plus sur le fonctionnement de l'outil Calculatrice raster
Illustration
Utilisation
L'outil Calculatrice raster permet de créer et d'exécuter une expression d'algèbre spatiale qui génère un raster en sortie.
-
Utilisez la liste Rasters pour sélectionner les jeux de données et les variables à utiliser dans l'expression. La liste Outils propose une sélection d'outils conditionnels et mathématiques courants qu'il est facile d'ajouter à l'expression. Des valeurs numériques et des symboles d'opérateurs mathématiques peuvent être ajoutés directement à l'expression.
Des chemins d’accès complets aux données ou des données existant dans les paramètres de l'environnement de l'espace de travail courant spécifié peuvent être saisis entre guillemets (""). Des nombres et des scalaires peuvent être introduits directement dans une expression.
-
La boîte de dialogue de l'outil Calculatrice raster contient les outils suivants :
Nombre d'outils de géotraitement et d'opérations peuvent être associés dans une expression d'algèbre spatial à l'aide de la syntaxe Python standard.
Attention :
Lorsque vous saisissez des noms d'outils, veillez à vérifier la syntaxe du nom de l'outil. Si la casse est incorrecte, l'expression ne sera pas valide et ne pourra pas s'exécuter, car Python est sensible à la casse.
Exemple de format général d'une expression d'algèbre spatial utilisant des outils de géotraitement :
Con(IsNull("streams"), 0, "streams")
L'outil prend en charge la syntaxe d'algèbre spatiale standard utilisée dans les scripts Python. Les seules différences sont les suivantes :
- vous n'avez pas besoin d’indiquer le nom du raster en sortie ou le signe = dans l'expression, puisque le nom en sortie est spécifié dans le paramètre Output raster (Raster en sortie),
- Vous n’avez pas besoin de convertir les données en entrée en un objet raster lorsque vous utilisez des opérateurs.
Vous pouvez facilement découper un jeu de données raster en définissant l'environnement de l'étendue et en spécifiant le nom du raster en entrée dans l'expression. Lorsque l'outil est exécuté, le raster en sortie est découpé selon l'étendue spécifiée.
Pour créer un raster avec des cellules de valeur constante, spécifiez l'étendue appropriée et les paramètres d'environnement de taille de cellule et entrez la valeur numérique dans l'expression.
Si plusieurs opérateurs sont utilisés dans une expression, ils ne sont pas nécessairement exécutés de gauche à droite. L'opérateur doté de la valeur de priorité la plus élevée est exécuté en premier. Pour plus d’informations, reportez-vous au tableau de priorité des opérateurs dans la rubrique Utiliser des opérateurs en algèbre spatiale. Vous pouvez utiliser des parenthèses pour contrôler l'ordre d'exécution.
Les opérateurs booléens (~, &, ^, |) ont une priorité supérieure aux opérateurs relationnels (<, <=, >, >=, ==, !=). Par conséquent, si des opérateurs booléens sont utilisés dans la même expression que des opérateurs relationnels, les opérateurs booléens sont exécutés en premier. Pour modifier l'ordre d'exécution, utilisez des parenthèses.
Si plusieurs opérateurs relationnels et/ou booléens sont utilisés consécutivement dans une expression individuelle, dans certains cas, elle peut ne pas s’exécuter. Pour éviter ce problème éventuel, utilisez des parenthèses appropriées dans l'expression afin de définir explicitement l'ordre d'exécution des opérateurs. Pour plus d’informations, reportez-vous à la section relative aux règles des instructions complexes dans la rubrique Créer des instructions complexes.
La performance d'une opération peut être améliorée par les fonctionnalités d'évaluation différée de l'algèbre spatiale. L'évaluation différée est une technique d'optimisation où les composants individuels d'une expression sont traités intelligemment, afin de réduire le nombre de jeux de données intermédiaires créés sur le disque.
Seuls les opérateurs et les outils qui se fondent sur une méthode d'exécution par cellule prennent en charge cette fonctionnalité. Les opérateurs et outils qui prennent en charge l'évaluation différée sont inclus dans l'outil Calculatrice raster sous forme de boutons ou dans la liste des outils fournis.
L'outil Calculatrice raster peut être utilisé dans ModelBuilder, mais gardez à l'esprit les points suivants :
- La syntaxe de l'expression détermine comment les variables doivent être spécifiées. Si vous sélectionnez une variable dans la liste des variables, elle est ajouté automatiquement à l'expression, à l'emplacement courant du curseur. Au moment de la validation du modèle :
- Les noms de couche sont mis entre guillemets (" ").
Exemple : "inlayer"
- Les variables de type Long, doubles ou booléennes sont mises entre des symboles de pourcentage (%%). Elles n'ont pas besoin d'être entre guillemets.
Exemple : % scale_factor%
- Les variables qui représentent des noms du jeu de données ou des chaînes doivent être mises entre guillemets et symboles de pourcentage ("%%").
Par exemple, inraster, s'il est sélectionné dans la liste des variables, deviendra "%inraster%" dans l'expression.
- Les noms de couche sont mis entre guillemets (" ").
- Dans ModelBuilder, les types de variable suivants constituent des entrées valides pour une expression :
- Chaîne
- Booléen
- numérique (Double et Long),
- données (jeu de données raster, couche raster, canal raster, fichier de couches .lyr).
- L'outil Calculatrice raster adopte généralement le comportement de connectivité standard des modèles dans ModelBuilder, à quelques exceptions près, qui résultent de la nécessité de formuler une expression d'algèbre spatiale valide. On compte les suivantes :
- Les variables sont connectées à l'outil Calculatrice raster lorsqu'elles sont sélectionnées dans la liste des variables. Toutes les variables sont répertoriées automatiquement dans la liste Variable, à l'intérieur de l'outil.
- Lorsqu'un jeu de données ou une variable est utilisée dans une expression, un lien entre la variable et l'outil est créé. Si vous supprimez la variable de l'expression, le lien associé entre la variable et l'outil est également supprimé.
- Si vous supprimez la connexion à une variable, la variable n'est pas supprimée de l'expression.
- Vous ne devez pas renommer une variable connectée à l'outil, car la variable ne sera pas renommée dans l'expression. Si vous renommez une variable connectée à l'outil, l'expression n'est plus valide.
- La syntaxe de l'expression détermine comment les variables doivent être spécifiées. Si vous sélectionnez une variable dans la liste des variables, elle est ajouté automatiquement à l'expression, à l'emplacement courant du curseur. Au moment de la validation du modèle :
Certains environnements de stockage des données raster peuvent s'appliquer à cet outil lorsque la sortie est dans un format raster autre que Grid Esri.
- Pour les environnements Statistiques raster, seule la case à cocher Calculate Statistics (Calculer les statistiques) est prise en charge.
- Pour les environnements Compression, seul le type Compression est pris en charge. Cet environnement ne s'applique que lorsque la sortie est de type entier. Comme la compression n'est pas prise en charge dans les rasters à virgule flottante, cet environnement ne s'applique que lorsque la sortie est de type entier.
- L'environnement Taille de tuile est uniquement pris en charge pour la sortie raster aux formats suivants : TIFF, géodatabase fichier ou géodatabase d’enterprise.
Si toutes les entrées sont des données raster multidimensionnelles comportant le même nombre de variables, l’outil effectue l’opération pour toutes les tranches dont la valeur de dimension est la même. La sortie est un raster multidimensionnel au format CRF. La variable dans les entrées doit présenter au moins une dimension commune et une valeur dimensionnelle commune qui seront traitées par cet outil ; si tel n’est pas le cas, une erreur est générée.
Si toutes les entrées comportent une variable, mais ont des noms différents, désélectionnez l’environnement de géotraitement Apparier la variable multidimensionnelle (définissez arcpy.env.matchMultidimensionalVariable = False dans Python) avant d’exécuter l’outil.
Si l’une des entrées correspond à un raster multidimensionnel et que l’autre entrée est une constante, l’outil effectue l’opération pour toutes les tranches de toutes les variables à l’aide de la valeur constante et la sortie est un raster multidimensionnel.
Remarque :
L'outil Calculatrice raster est uniquement destiné à l'application et peut être utilisé dans une boîte de dialogue d'outil de géotraitement ou dans ModelBuilder. Il n'est pas conçu pour être utiliser dans les scripts et n'est pas disponible dans le module ArcPy Spatial Analyst.
Paramètres
RasterCalculator(expression, output_raster)
Nom | Explication | Type de données |
expression | Remarque :Dans Python, les expressions d'algèbre spatial doivent être créées et exécutées à l'aide du module Spatial Analyst, qui est une extension du site-package Python d'ArcPy. Voir Algèbre spatial dans Spatial Analyst pour en savoir plus sur la façon d'effectuer votre analyse dans Python. | Raster Calculator Expression |
output_raster | Remarque :Pour plus d’informations sur la production de sorties à partir d’expressions d’algèbre spatiale dans Python, reportez-vous à la rubrique Créer une sortie. | Raster Dataset |
Environnements
Informations de licence
- Basic: Nécessite Image Analyst ou Spatial Analyst
- Standard: Nécessite Image Analyst ou Spatial Analyst
- Advanced: Nécessite Image Analyst ou Spatial Analyst
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?