流出点のスナップ (Snap Pour Point) (Spatial Analyst)

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

概要

指定した距離内で累積流量が最も大きいセルへ流出点をスナップします。

使用法

  • [流出点のスナップ (Snap Pour Point)] ツールを使用すると、[集水域ラスターの作成 (Watershed)] ツールを使用して流域を表すときに、累積流量の高いポイントを確実に選択できます。[流出点のスナップ (Snap Pour Point)] は、指定した流出点のスナップ距離内で累積流量が最も大きいセルを検索し、流出点をその位置に移動します。

  • 入力の流出点データがポイント フィーチャクラスの場合、処理のために内部でラスターに変換されます。

  • 元の流出点の位置が累積流量の大きい位置にスナップされる場合、出力は整数ラスターになります。

  • 入力の流出点の位置が 1 つだけの場合、出力の範囲は累積ラスターの範囲となります。流出点の位置が複数ある場合、出力の範囲は、出力範囲環境の設定によって決まります。

  • 入力の流出点の位置をフィーチャ データとして指定する場合、デフォルトのフィールドは有効な最初のフィールドになります。他に有効なフィールドが存在しない場合は、ObjectID フィールド (たとえば、OID または FID) がデフォルトになります。

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

構文

SnapPourPoint(in_pour_point_data, in_accumulation_raster, snap_distance, {pour_point_field})
パラメーター説明データ タイプ
in_pour_point_data

スナップされる入力の流出点の位置。

ラスター入力の場合、NoData でない (値を持つ) すべてのセルは流出点と見なされ、スナップされます。

ポイント フィーチャ入力の場合は、スナップされるセルの位置を指定します。

Raster Layer; Feature Layer
in_accumulation_raster

入力累積流量ラスター。

これは、[累積流量ラスターの作成 (Flow Accumulation)] ツールで作成できます。

Raster Layer
snap_distance

累積流量の大きなセルを検索する最大距離 (マップ単位)。

Double
pour_point_field
(オプション)

流出点の位置に値を割り当てるために使用するフィールド。

流出点データセットがラスターの場合は、Value フィールドを使用します。

流出点データセットがフィーチャの場合は、数値フィールドを使用します。フィールドが浮動小数点値を含む場合は、切り捨てられて整数値に変換されます。

Field

戻り値

名前説明データ タイプ
out_raster

元の流出点の位置が累積流量の大きい位置にスナップされる、出力の流出点のラスター。

出力は整数型になります。

Raster

コードのサンプル

SnapPourPoint (流出点のスナップ) の例 1 (Python ウィンドウ)

次の例では、指定した距離内で累積流量が最も大きいセルへの流出点をスナップしています。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSnapPour = SnapPourPoint("pourpoint", "flowaccumulation.img", 5,"VALUE") 
outSnapPour.save("c:/sapyexamples/output/outsnpprpnt01")
SnapPourPoint (流出点のスナップ) の例 2 (スタンドアロン スクリプト)

次の例では、指定した距離内で累積流量が最も大きいセルへの流出点をスナップしています。

# Name: SnapPourPoints_Ex_02.py
# Description: Snaps pour points to the cell of highest 
#              flow accumulation within a specified distance.
# 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
inPourPoint = "pourpoint"
inFlowAccum = "flowaccumulation.img"
tolerance = 5
pourField = "VALUE"

# Execute SnapPourPoints
outSnapPour = SnapPourPoint(inPourPoint, inFlowAccum, tolerance, 
                            pourField) 

# Save the output 
outSnapPour.save("c:/sapyexamples/output/outsnpprpnt02")

ライセンス情報

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

関連トピック