Bitwise Left Shift (Image Analyst)

Spatial Analyst のライセンスで利用可能。

Image Analyst ライセンスで利用できます。

概要

2 つの入力ラスターのバイナリ値に対してビット単位の左シフト演算を行います。

ビット演算ツールの詳細

Bitwise Left Shift の図
OutRas = BitwiseLeftShift(InRas1, 1)

使用法

  • このビット単位の演算を実行するには、2 つの入力値が必要です。

  • このツールでは、入力の順番が出力結果に影響します。

  • 入力値が浮動小数点数値の場合は、ビット単位の演算を実行する前に値を切り捨てて整数値に変換されます。

  • ビット単位の演算は次のように実行されます。

    • バイナリ値は 2 の補数として格納されます。
    • ツールは 32 ビット整数を対象とします。
    • 最左端のビット位置は値の符号 (正または負) のために予約されています。整数が正の値である場合、そのビット位置の値は 0 で、負の値である場合、そのビット位置の値は 1 です。

  • Bitwise Left Shift 演算は、ビットをラッピングしません。左端のビットは切り落とされます。

  • いずれの入力もシングル バンド ラスター、または入力のいずれかが定数の場合、出力はシングル バンド ラスターになります。

  • いずれの入力もマルチバンド ラスター、または入力のいずれかが定数の場合、出力はマルチバンド ラスターになります。各マルチバンド入力のバンド数は同じである必要があります。

  • ツールは、一方の入力の各バンドに対し、他方の入力の対応するバンドと対照して操作を行います。入力の一方がマルチバンド ラスターで他方が定数の場合、ツールはマルチバンド入力の各バンドの定数値と対照して操作を行います。

構文

BitwiseLeftShift(in_raster_or_constant1, in_raster_or_constant2)
パラメーター説明データ タイプ
in_raster_or_constant1

シフト処理の実行対象となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant
in_raster_or_constant2

ビットのシフト回数を定義する入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant

戻り値

名前説明データ タイプ
out_raster

出力ラスター。

セル値は、入力に対する Bitwise Left Shift 演算の結果です。

Raster

コードのサンプル

BitwiseLeftShift の例 1 (Python ウィンドウ)

この例では、2 つめの入力で定義されたビット数で最初の入力値を左シフトし、TIFF ラスターとして結果を出力します。

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/iapyexamples/data"
outBitwiseLS = BitwiseLeftShift("degs", "negs")
outBitwiseLS.save("C:/iapyexamples/output/outbitls.tif")
BitwiseLeftShift の例 2 (スタンドアロン スクリプト)

この例では、2 回目の入力で定義されたビット数で最初の入力値を左シフトします。

# Name: BitwiseLeftShift_Ex_02.py
# Description: Performs a Bitwise Left Shift operation on the binary
#              values of two input rasters
# Requirements: Image Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.ia import *

# Set environment settings
env.workspace = "C:/iapyexamples/data"

# Set local variables
inRaster1 = "degs"
inRaster2 = "negs"

# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")

# Execute BitwiseLeftShift
outBitwiseLShift = BitwiseLeftShift(inRaster1, inRaster2)

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

ライセンス情報

  • Basic: 次のものが必要 Image Analyst または Spatial Analyst
  • Standard: 次のものが必要 Image Analyst または Spatial Analyst
  • Advanced: 次のものが必要 Image Analyst または Spatial Analyst

関連トピック