距離の計算 (Calculate Distance) (ラスター解析)

サマリー

単一のソースまたは一群のソースから、ユークリッド距離を計算します。

ヒント:

[距離累計 (Distance Accumulation)] ツールまたは [距離アロケーション (Distance Allocation)] ツールにより、機能またはパフォーマンスが向上します。

距離の計算ツールの図

使用法

  • このラスター解析 ポータル ツールは、ArcGIS Enterprise「ArcGIS Enterprise の解析について」へのリンク ポータルにサイン インすると使用できます。このポータルに、ArcGIS Image Server 「ラスター解析の設定と配置」へのリンク用に構成された ラスター解析 「ArcGIS Image Server とは」へのリンク があります。ツールを起動すると、ArcGIS Pro がクライアントとしてサービスを提供し、ArcGIS Enterprise とフェデレートされているサーバーで処理が発生します。ポータル ツールはポータルから入力としてレイヤーを受け取り、ポータルに出力を作成します。

    入力ラスター レイヤーは、ポータルから入力されたレイヤー、イメージ サービスへの URI または URL、[Image Server レイヤーの作成 (Make Image Server Layer)] ツールの出力に対応しています。入力フィーチャ レイヤーには、ポータルからのレイヤー、フィーチャ サービスへの URI または URL を使用できます。このツールは、ローカルのラスター データまたはレイヤーをサポートしません。このポータル ツールへの入力としてはローカルのフィーチャ データとレイヤーを使用できますが、ポータルのレイヤーを入力することをお勧めします。

  • このツールの応用例として、任意の場所から最寄りの街までの距離の計算が挙げられます。

  • 入力ソース データがイメージ サービスの場合、一連のソース セルは、ソース ラスター内にある有効な値を持つすべてのセルから構成されます。 値が NoData のセルは、ソース セットには含まれません。 値 0 (ゼロ) は、正当なソースと見なされます。

  • 入力ソース データがフィーチャ サービスの場合、解析を実行する前に内部でソースの位置がラスターに変換されます。 ラスターの解像度は [出力セル サイズ] パラメーターまたは [セル サイズ] 環境で制御できます。 デフォルトの解像度は、入力空間参照において、入力フィーチャの範囲の幅または高さ (どちらか短い方) を 250 で割った値になります。

パラメーター

ラベル説明データ タイプ
入力ソース ラスターまたはフィーチャ

距離を計算するソースを定義するレイヤー。 レイヤーは、イメージ サービスでもフィーチャ サービスでもかまいません。

イメージ サービスの場合、入力タイプは整数または浮動小数点数です。

フィーチャ サービスの場合、入力はポイント、ライン、ポリゴンです。

Raster Layer; Image Service; Feature Layer; String
出力距離名

出力距離ラスター サービスの名前

String
最大距離
(オプション)

計算の最大距離。

単位には、キロメートル、メートル、マイル、ヤード、フィートを使用できます。

デフォルトの単位はメートルです。

Linear Unit
出力セル サイズ
(オプション)

出力ラスターのセル サイズと単位を設定します。

単位には、キロメートル、メートル、マイル、ヤード、フィートを使用できます。

デフォルトの単位はメートルです。

Linear Unit
出力距離名
(オプション)

出力方向ラスター サービスの名前

String
出力アロケーション名
(オプション)

出力アロケーション ラスター サービスの名前

String
アロケーション フィールド
(オプション)

各ソースを定義した値が保持されるソース入力上のフィールド。 整数タイプでなければなりません。

String
距離計算の方法
(オプション)

距離を平面 (平面地球) と測地線 (楕円体) のどちらの方法を用いて計算するかを指定します。

  • 平面距離計算は、2 次元直交座標系を使用して投影された平面で実行されます。 これがデフォルトです。
  • 測地線距離は楕円形に基づいて計算されます。 したがって、入力または出力投影に関係なく、結果は変わりません。
String
入力バリア ラスターまたはフィーチャ
(オプション)

バリアを定義するデータセット。

バリアは、整数ラスター、浮動小数点ラスター、またはフィーチャ レイヤーによって定義できます。

Raster Layer; Image Service; Feature Layer; String
出力バック方向名
(オプション)

出力バック方向ラスター サービスの名前。

String

派生した出力

ラベル説明データ タイプ
出力距離ラスター

出力距離ラスター。

Raster Layer
出力方向ラスター

出力方向ラスター。

Raster Layer
出力バック方向ラスター

出力バック方向ラスター。

Raster Layer
出力アロケーション ラスター

出力アロケーション ラスター。

Raster Layer

arcpy.ra.CalculateDistance(inputSourceRasterOrFeatures, outputDistanceName, {maximumDistance}, {outputCellSize}, {outputDirectionName}, {outputAllocationName}, {allocationField}, {distanceMethod}, {inputBarrierRasterOrFeatures}, {outputBackDirectionName})
名前説明データ タイプ
inputSourceRasterOrFeatures

距離を計算するソースを定義するレイヤー。 レイヤーは、イメージ サービスでもフィーチャ サービスでもかまいません。

イメージ サービスの場合、入力タイプは整数または浮動小数点数です。

フィーチャ サービスの場合、入力はポイント、ライン、ポリゴンです。

Raster Layer; Image Service; Feature Layer; String
outputDistanceName

出力距離ラスター サービスの名前

String
maximumDistance
(オプション)

計算の最大距離。

単位には、キロメートル、メートル、マイル、ヤード、フィートを使用できます。

デフォルトの単位はメートルです。

Linear Unit
outputCellSize
(オプション)

出力ラスターのセル サイズと単位を設定します。

単位には、キロメートル、メートル、マイル、ヤード、フィートを使用できます。

デフォルトの単位はメートルです。

Linear Unit
outputDirectionName
(オプション)

出力方向ラスター サービスの名前

String
outputAllocationName
(オプション)

出力アロケーション ラスター サービスの名前

String
allocationField
(オプション)

各ソースを定義した値が保持されるソース入力上のフィールド。 整数タイプでなければなりません。

String
distanceMethod
(オプション)

距離を平面 (平面地球) と測地線 (楕円体) のどちらの方法を用いて計算するかを指定します。

  • Planar距離計算は、2 次元直交座標系を使用して投影された平面で実行されます。 これがデフォルトです。
  • Geodesic距離は楕円形に基づいて計算されます。 したがって、入力または出力投影に関係なく、結果は変わりません。
String
inputBarrierRasterOrFeatures
(オプション)

バリアを定義するデータセット。

バリアは、整数ラスター、浮動小数点ラスター、またはフィーチャ レイヤーによって定義できます。

Raster Layer; Image Service; Feature Layer; String
outputBackDirectionName
(オプション)

出力バック方向ラスター サービスの名前。

String

派生した出力

名前説明データ タイプ
outputDistanceRaster

出力距離ラスター。

Raster Layer
outputDirectionRaster

出力方向ラスター。

Raster Layer
outputBackDirectionRaster

出力バック方向ラスター。

Raster Layer
outputAllocationRaster

出力アロケーション ラスター。

Raster Layer

コードのサンプル

CalculateDistance の例 1 (Python ウィンドウ)

この例では、単一ソースからのユークリッド距離を計算します。

import arcpy
arcpy.CalculateDistance_ra('https://MyPortal.esri.com/server/rest/services/Hosted/myPoints/FeatureServer/0',
                           "outDistance", "5000", "10", "outDirection", "outAllocation", "siting")
CalculateDistance の例 2 (スタンドアロン スクリプト)

この例では、複数ソースからのユークリッド距離を計算します。

# Name: CalculateDistance_Ex_02.py
# Description: Calculates for each cell the Euclidean distance, direction and allocation
#              to the nearest source.
# Requirements: ArcGIS Image Server

# Import system modules
import arcpy

# Set local variables
inSourceData = 'https://MyPortal.esri.com/server/rest/services/Hosted/reccenter/ImageServer'
outDistanceName = "eucdistance"
maxDistance = "4000"
cellSize = "10"
outDirectionName = "eucdirect"
outAllocationName = "eurallocation"
allocationField = "dataid"


# Execute EucDistance
arcpy.CalculateDistance_ra(inSourceData, outDistanceName, maxDistance, cellSize, outDirectionName,
                           outAllocationName, allocationField)

ライセンス情報

  • Basic: 次のものが必要 ArcGIS Image Server
  • Standard: 次のものが必要 ArcGIS Image Server
  • Advanced: 次のものが必要 ArcGIS Image Server

関連トピック