概要
既知のソースから既知の目的地までの特定のパスを計算します。
図
使用法
このラスター解析 ポータル ツールは、ArcGIS Enterprise の ポータルにサイン インすると使用できます。このポータルに、ArcGIS Image Server 用に構成された Raster Analysis があります。ツールを起動すると、ArcGIS Pro がクライアントとしてサービスを提供し、ArcGIS Enterprise とフェデレートされているサーバーで処理が発生します。ポータル ツールはポータルから入力としてレイヤーを受け取り、ポータルに出力を作成します。
入力ラスター レイヤーは、ポータルから入力されたレイヤー、イメージ サービスへの URI または URL、[Image Server レイヤーの作成 (Make Image Server Layer)] ツールの出力に対応しています。入力フィーチャ レイヤーには、ポータルからのレイヤー、フィーチャ サービスへの URI または URL を使用できます。このツールは、ローカルのラスター データまたはレイヤーをサポートしません。このポータル ツールへの入力としてはローカルのフィーチャ データとレイヤーを使用できますが、ポータルのレイヤーを入力することをお勧めします。
このツールの応用例として、特定の目的地に到達するまでの移動コストを見つけることが挙げられます。
[目的地への移動コスト パスの決定 (Determine Travel Cost Paths to Destinations)] ツールは、選択した位置から累積コスト サーフェス上でコスト距離が最も近いソース セルまでの最小コスト パスを記録する出力ラスターを作成します。
通常、入力コスト距離とバックリンク イメージ サービスを作成するには、移動コストの計算 (Calculate Travel Cost) を実行してから目的地への移動コスト パスの決定 (Determine Travel Cost Paths To Destinations) を実行する必要があります。これらは、目的地への移動コスト パスの決定 (Determine Travel Cost Paths to Destinations) に必須の入力イメージ サービスです。
それぞれの最小コスト パスは、処理時に値が割り当てられます。コスト パスの元のソース (コスト距離とバック リンクの出力元) の最終セルには 1 が割り当てられ、最初のパスには 3、2 番目のパスには 4 が割り当てられます。値 2 は、共通のコスト パスを含むパスの部分をマージするために予約されています。
入力目的地データがイメージ サービスの場合、一連の目的地セルは、有効な値を持つ入力イメージ サービスまたは目的地フィーチャ データ内にあるすべてのセルから構成されます。値が NoData のセルは、ソース セットには含まれません。値ゼロは、正式な目的地と見なされます。
ソース入力がフィーチャ サービスの場合、デフォルトで、最初の有効な利用可能フィールドが使用されます。有効なフィールドがない場合は、ObjectID フィールド (たとえば、OID や FID) が使用されます。
複数のパスがマージされ、ソースに戻る残りの距離が同じルートの場合、2 つのパスが移動するセグメントには値 2 が割り当てられます。マージされた部分は両方のルートに属するため、マージされたパスの部分には、パスの値を割り当てることはできません。
[目的地への移動コスト パスの決定 (Determine Travel Cost Paths to Destinations)] は、[セル サイズ] 環境設定を無視し、出力ラスターの [入力コスト バック リンク ラスター] のセル サイズを使用します。バック リンク ラスターのパターンは、別の解像度にリサンプリングされた場合は、大幅に変化します。混乱を避けるために、このツールを使用するときは、セル サイズを設定しないでください。
[目的地への移動コスト パスの決定 (Determine Travel Cost Paths to Destinations)] を使用して、デジタル標高モデル (DEM) で負荷が最小のパスを算出することもできます。この場合、[入力コスト距離ラスター] に DEM、[入力コスト バック リンク ラスター] に [流向ラスターの作成 (Flow Direction)] ツールからの出力を使用します。有効な流向ラスター値は、1、2、4、8、16、32、64、128 です。バック リンク ラスターの有効値は 0 ~ 360 です。これらのイメージ サービスはどちらにも使用できます。
入力目的地データがフィーチャの場合、少なくとも 1 つの有効なフィールドがある必要があります。
構文
arcpy.ra.DetermineTravelCostPathsToDestinations(inputDestinationRasterOrFeatures, inputCostDistanceRaster, inputCostBacklinkRaster, outputName, {destinationField}, {pathType})
パラメーター | 説明 | データ タイプ |
inputDestinationRasterOrFeatures | 最小コストのソースまでの最小コスト パスが求められるセルを識別するイメージ サービスまたはフィーチャ サービス。 入力がイメージ サービスの場合、入力は有効な値 (ゼロは有効値) を持つセルから構成され、残りのセルには NoData を割り当てる必要があります。 | Raster Layer; Image Service; Feature Layer; String |
inputCostDistanceRaster | 目的地の位置からソースまでの最小コスト パスを決定するために使用されるコスト距離イメージ サービスの名前。 コスト距離ラスターは、通常、[移動コストの計算 (Calculate Travel Cost)] ツールで作成されます。コスト距離ラスターは、各セルから一連のソース セルまでのコスト サーフェス上での最小累積コスト距離を、セルごとに格納しています。 | Raster Layer; Image Service; String |
inputCostBacklinkRaster | 最小コスト パスでソースに戻るパスを決定するために使用するバック リンク ラスターの名前。 バック リンク ラスターの各セルについて、値は、セルから 1 つのソース セルまたは一連のソース セルまでの最小累積コスト パス上にある次のセルである近傍を識別します。 | Raster Layer; Image Service; String |
outputName | 出力移動コスト パス ラスター サービスの名前。 デフォルトの名前は、ツール名と入力レイヤー名に基づいて設定されます。レイヤー名がすでに存在する場合は、別の名前を指定するよう求められます。 | String |
destinationField (オプション) | 各目的地を定義する値を保持する目的地レイヤーのフィールド。 入力フィーチャ サービスには、少なくとも 1 つの有効なフィールドがある必要があります。 | String |
pathType (オプション) | 入力目的地データの値とゾーンを、コスト パスの計算の中でどのように解釈するかを定義します。
| String |
派生した出力
名前 | 説明 | データ タイプ |
outputRaster | 出力ラスター。 | ラスター レイヤー |
コードのサンプル
この例では、目的地への移動コストを計算します。
import arcpy
arcpy.DetermineTravelCostPathstoDestinations_ra(
"https://myserver/rest/services/sources/ImageServer",
"https://myserver/rest/services/costsurface/ImageServer",
"https://myserver/rest/services/backlinkras/ImageServer",
"outpath", "destField", "EACH_ZONE")
この例では、目的地への移動コストを計算します。
#-------------------------------------------------------------------------------
# Name: DetermineTravelCostPathstoDestinations_Ex_02.py
# Description: Calculates the optimum travel cost path.
# Requirements: ArcGIS Image Server
# Import system modules
import arcpy
# Set local variables
inputSourceLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/sources/ImageServer'
inputCostLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/costraster/ImageServer'
inputBackLinkLayer =
'https://MyPortal.esri.com/server/rest/services/Hosted/backlinkras/ImageServer'
outputName = 'outTravelPathsRaster'
destField = 'dest1'
pathType = 'BEST_SINGLE'
arcpy.DetermineTravelCostPathstoDestinations_ra(inputSourceLayer, inputCostLayer,
inputBackLinkLayer, outputName,
destField, pathType)
環境
ライセンス情報
- Basic: 次のものが必要 ArcGIS Image Server
- Standard: 次のものが必要 ArcGIS Image Server
- Advanced: 次のものが必要 ArcGIS Image Server