Décalage à droite bit à bit (Spatial Analyst)
Récapitulatif
Effectue une opération de décalage à droite bit à bit sur les valeurs binaires de deux rasters en entrée.
Pour en savoir plus sur le fonctionnement des outils de mathématiques bit à bit
Illustration
Utilisation
Deux entrées sont nécessaires pour cette opération bit à bit.
-
L'ordre des entrées est important pour cet outil.
Si une entrée présente une virgule flottante, les valeurs sont converties en entiers par troncation avant l'opération bit à bit.
Dans les opérations bit à bit :
- Les valeurs binaires sont stockées dans deux compléments.
- Les outils fonctionnent sur les nombres entiers 32 bits.
- La position de bit la plus à gauche est réservée au signe (positif ou négatif) de la valeur. Si le nombre entier est positif, la position du bit est 0 ; s'il est négatif, la position du bit est 1.
-
L'opération Décalage à droite bit à bit ne fait aucun retour à la ligne automatique de bits. Le bit le plus à droite est supprimé.
-
En algèbre spatiale, l'opérateur équivalent a le symbole ">>" (lien).
Syntaxe
Paramètre | Explication | Type de données |
in_raster_or_constant1 | Entrée sur laquelle exécuter le décalage. Un nombre peut être utilisé en entrée pour ce paramètre, à condition qu'un raster soit spécifié pour l'autre paramètre. Afin que vous puissiez spécifier un nombre pour les deux entrées, la taille de cellule et l'étendue doivent être tout d'abord définies dans l'environnement. | Raster Layer | Constant |
in_raster_or_constant2 |
Entrée définissant le nombre de positions duquel déplacer les bits. Un nombre peut être utilisé en entrée pour ce paramètre, à condition qu'un raster soit spécifié pour l'autre paramètre. Afin que vous puissiez spécifier un nombre pour les deux entrées, la taille de cellule et l'étendue doivent être tout d'abord définies dans l'environnement. | Raster Layer | Constant |
Valeur renvoyée
Nom | Explication | Type de données |
out_raster |
Raster en sortie. Valeurs de cellule correspondant au résultat de l'opération Décalage à droite bit à bit sur les entrées. | Raster |
Exemple de code
Cet exemple décale vers la droite les valeurs de la première entrée par le nombre de bits défini par la seconde entrée, et génère le résultat sous la forme d'un raster GRID.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBitwiseRShift = BitwiseRightShift("degs", "negs")
outBitwiseRShift.save("C:/sapyexamples/output/outbitrs")
Cet exemple décale vers la droite les valeurs de la première entrée par le nombre de bits défini par la seconde entrée, et génère le résultat sous la forme d'un raster IMG.
# Name: BitwiseRightShift_Ex_02.py
# Description: Performs a Bitwise Right Shift operation on the binary
# values of two input rasters
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster1 = "degs"
inRaster2 = "negs"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute BitwiseRightShift
outBitwiseRShift = BitwiseRightShift(inRaster1, inRaster2)
# Save the output
outBitwiseRShift.save("C:/sapyexamples/output/outbitrshift.img")