Skip To Content

流路距離ラスターの作成 (Flow Distance)

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

概要

各セルについて、セルが流入する河川上の経路に従い、傾斜距離を持つ水平コンポーネントまたは垂直コンポーネントを計算します。複数の経路がある場合、最小、加重平均、最大の流路距離を計算できます。

流向ラスターが指定された場合、降下傾斜方向は、このラスターで定義された方向に制限されます。

[流路距離ラスターの作成 (Flow Distance)] の図

使用法

  • 降下傾斜方向 (これに沿って流動距離を測定) を制限したい場合は、入力流向ラスターを指定してください。[流向ラスターの作成 (Flow Direction)] ツールを使って求められます。任意の入力流向ラスターを生成する際は、D8、DINF (D-Infinity )、MFD (Multi Flow Direction) のいずれかのモデルから選択します。[入力流向タイプ] を使用して、流向ラスターの作成時に使用されたメソッドを指定します。

  • 任意の入力流向ラスターを指定する場合、このラスターは [流向ラスターの作成 (Flow Direction)] ツールで作成し、[流路距離ラスターの作成 (Flow Distance)] ツールと同じ入力サーフェス ラスターを使用することをお勧めします。

    この入力サーフェス ラスターに窪地が存在しない場合、入力河川ラスターで表される河川セルまでの距離が計測されます。

    この入力サーフェス ラスターに窪地が存在する場合、経路の一部は河川に到達する前に窪地に流れ込み、流向が止まる可能性があります。その場合、これらのセルの流路距離は、窪地セルまで計測されます。

  • 任意の入力流向ラスターを指定せずにツールを実行すると、各セルから、セルが流入する河川までのすべての下り経路を考慮したうえで、流路距離が評価されます。

    任意の D8 流向ラスターを使用してツールを実行すると、すべてのセルから河川上のセルまでの可能な下り経路は 1 つしかなく、流路距離はこの経路に沿って計測されます。

  • 各セルからその先にある河川上のセルに到る複数の流路が存在する場合は、[統計情報の種類] を使用して、最小、加重平均、または最大の流動距離を計算します。

    各セルから河川上のセルに到る流路が 1 つだけ存在する場合は、統計情報のすべての種類で同じ結果が生成されます。

  • 入力河川ラスターを作成する際は、ツールに入力した入力サーフェス ラスターと同じものを使用することをお勧めします。入力サーフェス ラスターから河川ラスターを作成するには、[流向ラスターの作成 (Flow Direction)][累積流量ラスターの作成 (Flow Accumulation)]、および [Con] ツールを使用します。他のデータ ソースからの河川を使用する場合、最善の結果を得るために、先に入力サーフェス ラスターに書き込んでから、その結果に対して [流向距離ラスターの作成 (Flow Distance)] ツールを実行します。

  • このツールは、並列処理をサポートしています。お使いのコンピューターに、複数のプロセッサや、複数のコアを持つプロセッサが搭載されている場合は、特に対象となるデータセットが大きいときにパフォーマンスが向上します。「Spatial Analyst による並列処理」ヘルプ トピックには、この機能と設定方法の詳細が記載されています。

    並列処理を使用する場合、処理中のデータ チャンクを処理するために一時データが書き込まれます。デフォルトの一時フォルダーの場所は、ローカルの C ドライブ上です。このフォルダーの場所は、TempFolders という名前のシステム環境変数を設定し、使用するフォルダーへのパスを指定することで変更できます (例: E:\RasterCache)。コンピューター上で管理権限を持っている場合は、レジストリ キー (例: [HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro\Raster]) を使用することもできます。

    デフォルトでは、このツールは使用可能なコアの 50% を使うようになっています。入力データのサイズが 5,000 セル x 5,000 セルよりも小さい場合、使用されるコア数はそれよりも少なくなります。並列処理ファクター環境で、ツールが使用するコアの数を制御できます。

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

構文

FlowDistance (in_stream_raster, in_surface_raster, {in_flow_direction_raster}, {distance_type}, {flow_direction_type}, {statistics_type})
パラメーター説明データ タイプ
in_stream_raster

線形河川ネットワークを表す入力河川ラスター。

Raster Layer
in_surface_raster

連続サーフェスを表す入力ラスター。

Raster Layer
in_flow_direction_raster
(オプション)

各セルからの流れの方向を示す入力ラスター。

流向ラスターが提供される場合、降下傾斜方向は、入力流向で定義された方向に限定されます。

流向ラスターは [流向ラスターの作成 (Flow Direction)] ツールを使用して作成できます。

流向ラスターは、D8、MFD (Multi Flow Direction)、および D-Infinity (DINF) を使用して作成できます。flow_direction_type パラメーターを使用して、流向ラスターの作成時に使用されたメソッドを指定します。

Raster Layer
distance_type
(オプション)

流路距離の垂直的または水平的コンポーネントが計算されるかどうかを決定します。

  • VERTICAL流路距離の計算は、流向距離の垂直コンポーネントを表し、ドメインの各セルから、セルが流入する河川上のセルまでの経路に従います。これがデフォルトです。
  • HORIZONTAL流路距離の計算は、流向距離の水平コンポーネントを表し、ドメインの各セルから、セルが流入する河川上のセルまでの経路に従います。
String
flow_direction_type
(オプション)

入力流向ラスターのタイプには、D8、MFD (Multi Flow Direction)、または DINF (D-Infinity) があります。

  • D8入力流向ラスターのタイプは D8 です。これがデフォルトです。
  • MFD入力流向ラスターのタイプは MFD (Multi Flow Direction) です。
  • DINF入力流向ラスターのタイプは DINF (D-Infinity) です。
String
statistics_type
(オプション)

複数の流路の流向距離の計算に使用する統計情報の種類を決定します。各セルから河川上のセルに到る流路が 1 つだけ存在する場合は、統計情報のすべての種類で同じ結果が生成されます。

  • MINIMUM複数の流路が存在する場合、最小の流向距離が計算されます。これがデフォルトです。
  • WEIGHTED_MEAN複数の流路が存在する場合、流動距離の加重平均が計算されます。セルからその下流隣接セルへのフローの割合が、加重平均を計算するための重みとして使用されます。
  • MAXIMUM複数の流路が存在する場合、最大の流動距離が計算されます。
String

戻り値

名前説明データ タイプ
out_raster

出力流動距離ラスター。

Raster

コードのサンプル

FlowDistance (流路距離ラスターの作成) の例 1 (Python ウィンドウ)

この例では、流路距離ラスターを作成します。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outFlowDistance = FlowDistance("streams", "elevation", "", "VERTICAL")
outFlowDistance.save("C:/sapyexamples/output/outflowdist01")
FlowDistance (流路距離ラスターの作成) の例 2 (スタンドアロン スクリプト)

この例では、流路距離ラスターを作成します。

# Name: FlowDistance_Example.py
# Description: Creates a raster of horizontal flow distance from each cell to a cell 
# on the stream into which it drains.
# 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
inStreamRaster = "streams"
inSurfaceRaster = "elevation"
inFlowDirectionRaster = "flowdir"


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

# Execute FlowDistance
outFlowDistance = FlowDistance(inStreamRaster, inSurfaceRaster, inFlowDirectionRaster, "HORIZONTAL")

# Save the output 
outFlowDistance.save("C:/sapyexamples/output/outflowdist02")

ライセンス情報

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

関連トピック