Bitwise Left Shift (Spatial Analyst)

Diese ArcGIS 2.9-Dokumentation wurde archiviert und wird nicht mehr aktualisiert. Inhalt und Links sind möglicherweise veraltet. Verwenden Sie die aktuelle Dokumentation.

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Eine bitweise LEFT SHIFT-Operation für die binären Werte von zwei Eingabe-Rastern durchführen.

Weitere Informationen zur Funktionsweise von bitweisen mathematischen Werkzeugen

Abbildung

Abbildung "Bitwise Left Shift"
OutRas = BitwiseLeftShift(InRas1, 1)

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 ganzzahligen Wert konvertiert, bevor der bitweise Vorgang ausgeführt wird.

  • Bei bitweisen Operationen gilt Folgendes:

    • Binäre Werte werden in Zweierkomplementen gespeichert.
    • Die Werkzeuge können ganzzahlige 32-Bit-Werte verarbeiten.
    • Die Bitposition links außen ist für das Vorzeichen (positiv oder negativ) des Wertes reserviert. Wenn der ganzzahlige Wert positiv ist, ist die Bitposition 0. Ist er negativ, ist die Bitposition 1.

  • Bei der Operation mit "Bitwise Left Shift" erfolgt kein Umbruch von Bits. Das am weitesten links stehende Bit wird gelöscht.

  • Wenn beide Eingaben Einzelband-Raster sind oder wenn eine der Eingaben eine Konstante ist, dann ist die Ausgabe ein Einzelband-Raster.

  • Wenn beide Eingaben Multiband-Raster sind, führt das Werkzeug den Vorgang für jedes Band aus einer Eingabe durch, und die Ausgabe ist ein Multiband-Raster. Die Anzahl an Bändern in jeder Multiband-Eingabe muss identisch sein.

  • Wenn eine der Eingaben ein Multiband-Raster und die andere Eingabe eine Konstante ist, führt das Werkzeug den Vorgang für jedes Band in der Multiband-Eingabe mit dem konstanten Wert durch. Die Ausgabe ist in diesem Fall ein Multiband-Raster.

  • Wenn in ArcPy beide Eingaben multidimensionale Raster mit derselben Anzahl an Variablen sind, führt das Werkzeug den Vorgang für alle Ausschnitte mit demselben Dimensionswert durch, und die Ausgabe ist ein multidimensionales Raster. Die Variablen in den Eingaben müssen gleiche Dimensionen oder eine gemeinsame Dimension, dürfen jedoch keine nicht gemeinsamen Dimensionen aufweisen.

    Wenn beide Eingaben eine Variable, aber unterschiedliche Namen aufweisen, legen Sie für die matchMultidimensionalVariable-Geoverarbeitungsumgebung False fest, um den Vorgang auszuführen.

    Wenn in ArcPy eine der Eingaben ein multidimensionales Raster und die andere Eingabe eine Konstante ist, führt das Werkzeug den Vorgang für alle Ausschnitte sämtlicher Variablen mit dem konstanten Wert durch, und die Ausgabe ist ein multidimensionales Raster.

  • In Map Algebra ist das entsprechende Operatorsymbol für dieses Werkzeug "<<" (link).

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Raster oder konstanter Wert 1

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. Um eine Zahl für beide Eingaben anzugeben, müssen Sie zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen.

Raster Layer; Constant
Eingabe-Raster oder konstanter Wert 2

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. Um eine Zahl für beide Eingaben anzugeben, müssen Sie zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen.

Raster Layer; Constant

Rückgabewert

BeschriftungErläuterungDatentyp
Ausgabe-Raster

Das Ausgabe-Raster.

Die Zellenwerte sind das Ergebnis einer Operation mit "Bitwise Left Shift" für die Eingaben.

Raster

BitwiseLeftShift(in_raster_or_constant1, in_raster_or_constant2)
NameErläuterungDatentyp
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. Um eine Zahl für beide Eingaben anzugeben, müssen Sie 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. Um eine Zahl für beide Eingaben anzugeben, müssen Sie zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen.

Raster Layer; Constant

Rückgabewert

NameErläuterungDatentyp
out_raster

Das Ausgabe-Raster.

Die Zellenwerte sind das Ergebnis einer Operation mit "Bitwise Left Shift" für die Eingaben.

Raster

Codebeispiel

BitwiseLeftShift – Beispiel 1 (Python-Fenster)

In diesem Beispiel werden die Werte der ersten Eingabe um die Anzahl der Bits, die von der zweiten Eingabe definiert wurde, nach links verschoben und das Ergebnis als TIFF-Raster ausgegeben.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBitwiseLS = BitwiseLeftShift("degs", "negs")
outBitwiseLS.save("C:/sapyexamples/output/outbitls.tif")
BitwiseLeftShift – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel werden die Werte der ersten Eingabe um die Anzahl der Bits, die von der zweiten Eingabe definiert wurde, nach links verschoben.

# Name: BitwiseLeftShift_Ex_02.py
# Description: Performs a Bitwise Left 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"

# Execute BitwiseLeftShift
outBitwiseLShift = BitwiseLeftShift(inRaster1, inRaster2)

# Save the output 
outBitwiseLShift.save("C:/sapyexamples/output/outlshift")

Lizenzinformationen

  • Basic: Erfordert Spatial Analyst oder Image Analyst
  • Standard: Erfordert Spatial Analyst oder Image Analyst
  • Advanced: Erfordert Spatial Analyst oder Image Analyst

Verwandte Themen