Bitwise Right Shift (Spatial Analyst)

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

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

概要

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

ビット演算ツールの詳細

Bitwise Right Shift の図
OutRas = BitwiseRightShift(InRas1, 1)

使用法

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

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

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

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

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

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

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

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

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

  • マップ代数演算では、このツールに相当する 演算子 シンボルは、「>>」 (リンク) です。

  • このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。

構文

BitwiseRightShift(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 Right Shift 演算の結果です。

Raster

コードのサンプル

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

この例では、2 つ目の入力で定義されたビット数で最初の入力値を右シフトし、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")
BitwiseRightShift の例 2 (スタンドアロン スクリプト)

この例では、2 つ目の入力で定義されたビット数で最初の入力値を右シフトし、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"

# Execute BitwiseRightShift
outBitwiseRShift = BitwiseRightShift(inRaster1, inRaster2)

# Save the output 
outBitwiseRShift.save("C:/sapyexamples/output/outbitrshift.img")

ライセンス情報

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

関連トピック