コスト パス(Cost Path) (Spatial Analyst)

ライセンス レベル:BasicStandardAdvanced

サマリ

ソースから目的地までの最小コスト パスを計算します。

最小コスト パスの作成の詳細

使用法

構文

CostPath (in_destination_data, in_cost_distance_raster, in_cost_backlink_raster, {path_type}, {destination_field})
パラメータ説明データ タイプ
in_destination_data

最小コストのソースまでの最小コスト パスが求められるセルを識別するラスタまたはフィーチャ データセット

入力がラスタの場合、入力は有効な値(ゼロは有効値)を持つセルから構成され、残りのセルには NoData を割り当てる必要があります。

Raster Layer | Feature Layer
in_cost_distance_raster

目的地の位置からソースまでの最小コスト パスを決定するために使用されるコスト距離ラスタの名前

コスト距離ラスタは通常、[コスト距離(Cost Distance)][コスト アロケーション(Cost Allocation)] または [コスト バック リンク(Cost Back Link)] ツールを使用して作成します。コスト距離ラスタは、各セルから一連のソース セルまでのコスト サーフェス上での最小累積コスト距離を、セルごとに格納しています。

Raster Layer
in_cost_backlink_raster

最小コスト パスでソースに戻るパスを決定するために使用するバック リンク ラスタの名前。

バック リンク ラスタの各セルについて、値は、セルから 1 つのソース セルまたは一連のソース セルまでの最小累積コスト パス上にある次のセルである近傍を識別します。

Raster Layer
path_type
(オプション)

入力目的地データの値とゾーンを、コスト パスの計算の中でどのように解釈するかを定義するキーワード

  • EACH_CELL 入力目的地データの有効な値を持つ各セルについて、最小コスト パスが求められ出力ラスタに保存されます。このオプションを使用すると、入力目的地データの各セルは別々に扱われ、それぞれの最小コスト パスがセルから決定されます。
  • EACH_ZONE 入力目的地データの有効な値を持つ各ゾーンについて、最小コスト パスが求められ出力ラスタに保存されます。このオプションを使用すると、各ゾーンの最小コスト パスは、ゾーン内で最低のコスト距離加重を持つセルから開始します。
  • BEST_SINGLE 入力目的地データのすべてのセルについて、最小コスト パスは、ソース セルへの最小コスト パスの最小値を使用してセルから求められます。
String
destination_field
(オプション)

目的地の位置の値を取得するために使用するフィールド。

入力フィーチャ データには、少なくとも 1 つの有効なフィールドがある必要があります。

Field

戻り値

名前説明データ タイプ
out_raster

出力コスト パス ラスタ。

出力ラスタのタイプは整数です。

Raster

コードのサンプル

CostPath(コスト パス)の例 1(Python ウィンドウ)

次の Python ウィンドウ スクリプトで、[CostPath(コスト パス)] ツールの使用方法を示します。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCostPath = CostPath("observers", "costraster", "backlink2", "EACH_CELL")
outCostPath.save("c:/sapyexamples/output/costpath")
CostPath(コスト パス)の例 2(スタンドアロン スクリプト)

ソースから目的地までの最小コスト パスを計算します。

# Name: CostPath_Ex_02.py
# Description: Calculates the least-cost path from a source to 
#              a destination.
# 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
inDestination = "observers.shp"
costRaster = "costraster"
backLink = "backlink2"
method = "EACH_CELL"
destField = "FID"

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

# Execute CostPath
outCostPath = CostPath(inDestination, costRaster, backLink, method,
                       destField)

# Save the output 
outCostPath.save("c:/sapyexamples/output/costpath02")

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: 次のものが必要 Spatial Analyst
ArcGIS for Desktop Standard: 次のものが必要 Spatial Analyst
ArcGIS for Desktop Advanced: 次のものが必要 Spatial Analyst
9/17/2013