長方形で抽出 (Extract by Rectangle) (Spatial Analyst)

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

概要

範囲を指定した長方形に基づいて、ラスターのセルを抽出します。

長方形で抽出 (Extract by Rectangle) の図
OutRas = ExtractByRectangle(InRas1, Extent(1, 0, 5, 5), "INSIDE")

使用法

  • 入力ラスターからの追加属性 (存在する場合) は、そのまま出力ラスター属性テーブルに引き継がれます。記録されるプロパティに応じて、一部の属性値は再計算が必要な場合があります。

  • [入力ラスター] (Python では in_raster) としてマルチバンド ラスターが指定された場合、すべてのバンドが使用されます。

    マルチバンド ラスターから選択したバンドを処理するには、まず [コンポジット バンド (Composite Bands)] ツールを使用して、特定のバンドで構成された新しいラスター データセットを作成します。その後、結果を [入力ラスター] (Python では in_raster) として使用します。

    デフォルトの出力形式は、ジオデータベース ラスターです。出力形式として Esri Grid スタックを指定した場合、スタック名を数字で開始すること、名前にスペースを使用すること、名前の長さが 9 文字を超えることはできません。

  • セルが長方形の内部か外部かを判定するには、セルの中心が使用されます。中心が長方形のアウトライン内にある場合、そのセルの一部が長方形の外にあっても、そのセル全体が内部にあると見なされます。

  • 選択されていないセル位置には NoData 値が代入されます。

  • 入力ラスターが整数の場合、出力ラスターも整数になります。入力のいずれかが浮動小数点値である場合、出力は浮動小数点値になります。

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

構文

ExtractByRectangle(in_raster, rectangle, {extraction_area})
パラメーター説明データ タイプ
in_raster

セルを抽出する入力ラスター。

Raster Layer
rectangle
extent

抽出するエリアを定義する長方形。

範囲オブジェクトを使用して、座標を指定します。

オブジェクトの形式:

  • Extent(XMin, YMin, XMax, YMax)

    XMin および YMin は、抽出するエリアの左下の座標を定義します。XMax および YMax は、右上の座標を定義します。

座標は、入力ラスターと同じマップ単位で指定します。

Extent
extraction_area
(オプション)

入力長方形の内部と外部のどちらのセルを抽出するかを識別します。

  • INSIDE 入力長方形の内部のセルを選択し、出力ラスターに書き込むことを指定するキーワード。長方形の外部にあるすべてのセルは、出力ラスターでは値が NoData になります。
  • OUTSIDE入力長方形の外部のセルを選択し、出力ラスターに書き込むことを指定するキーワード。長方形の内部にあるすべてのセルは、出力ラスターでは値が NoData になります。
String

戻り値

名前説明データ タイプ
out_raster

入力ラスターから抽出したセル値が格納される出力ラスター。

Raster

コードのサンプル

ExtractByRectangle (長方形で抽出) の例 1 (Python ウィンドウ)

次の例では、長方形の範囲外にあるセルを新しいラスターに抽出しています。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
rectExtract = ExtractByRectangle("elevation", 
                                 Extent(477625, 213900, 486400, 224200), 
                                 "OUTSIDE")
rectExtract.save("c:/sapyexamples/output/extrect")
ExtractByRectangle (長方形で抽出) の例 2 (スタンドアロン スクリプト)

次の例では、長方形の範囲内にあるセルを新しいラスターに抽出しています。

# Name: ExtractByRectangle_Ex_02.py
# Description: 
# 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
inRaster = "elevation"
inRectangle = Extent(477625, 213900, 486400, 224200)

# Execute ExtractByRectangle
rectExtract = ExtractByRectangle(inRaster, inRectangle, "INSIDE")

# Save the output 
rectExtract.save("c:/sapyexamples/output/extrect02")

ライセンス情報

  • Basic: 次のものが必要 Spatial Analyst
  • Standard: 次のものが必要 Spatial Analyst
  • Advanced: 次のものが必要 Spatial Analyst

関連トピック