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

概要

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

[距離の計算 (Calculate Distance)]ツールの図

使用法

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

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

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

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

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

構文

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

出力距離ラスター。

ラスター レイヤー
outputDirectionRaster

出力方向ラスター。

ラスター レイヤー
outputBackDirectionRaster

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

ラスター レイヤー
outputAllocationRaster

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

ラスター レイヤー

コードのサンプル

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

関連トピック