Bitwise Right Shift (Spatial Analyst)
Zusammenfassung
Führt eine "Bitwise Right Shift"-Operation für die binären Werte von zwei Eingabe-Rastern aus.
Weitere Informationen zur Funktionsweise von bitweisen mathematischen Werkzeugen
Bild
Verwendung
Zwei Eingaben sind notwendig, damit dieser bitweise Vorgang stattfindet.
-
Für dieses Werkzeug ist die Reihenfolge der Eingaben relevant.
Wenn eine Eingabe ein Gleitkommawert ist, wird dieser durch Kürzung in einen Ganzzahlwert konvertiert, bevor der bitweise Vorgang ausgeführt wird.
In bitweisen Vorgängen gilt Folgendes:
- Binäre Werte werden in Zweierkomplementen gespeichert.
- Die Werkzeuge können 32-Bit-Ganzzahlwerte verarbeiten.
- Die Bitposition links außen ist für das Vorzeichen (positiv oder negativ) des Werts reserviert. Wenn der Ganzzahlwert positiv ist, ist die Bitposition 0. Ist er negativ, ist die Bitposition 1.
-
Bei der "Bitwise Right Shift"-Operation erfolgt kein Umbruch von Bits. Das am weitesten rechts stehende Bit wird gelöscht.
-
In Map-Algebra ist das entsprechende Operatorsymbol für dieses Werkzeug ">>" (Link).
Syntax
Parameter | Erläuterung | Datentyp |
in_raster_or_constant1 | Die Eingabe, auf die die Verschiebung angewendet werden soll. Für diesen Parameter kann eine Zahl als Eingabe verwendet werden, vorausgesetzt für den anderen Parameter wird ein Raster angegeben. Wenn Sie für beide Eingaben eine Zahl angeben möchten, Sie müssen zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen. | Raster Layer | Constant |
in_raster_or_constant2 |
Die Eingabe, die die Anzahl der Positionen definiert, um die die Bits verschoben werden. Für diesen Parameter kann eine Zahl als Eingabe verwendet werden, vorausgesetzt für den anderen Parameter wird ein Raster angegeben. Wenn Sie für beide Eingaben eine Zahl angeben möchten, Sie müssen zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen. | Raster Layer | Constant |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster |
Das Ausgabe-Raster. Die Zellenwerte sind das Ergebnis einer "Bitwise Right Shift"-Operation für die Eingaben. | Raster |
Codebeispiel
In diesem Beispiel werden die Werte der ersten Eingabe um die Anzahl der Bits, die von der zweiten Eingabe definiert wurde, nach rechts verschoben und das Ergebnis als GRID-Raster ausgegeben.
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")
In diesem Beispiel werden die Werte der ersten Eingabe um die Anzahl der Bits, die von der zweiten Eingabe definiert wurde, nach rechts verschoben und das Ergebnis als IMG-Raster ausgegeben.
# 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")