直線距離の計算

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

距離解析といえば、一般的に直線ユークリッド距離を思い浮かべることでしょう。 この距離は 2 つのポイント間の最短距離です。

直線距離とは、紙のマップに定規を当てて計測する距離のことです。 直線距離は 2 つのポイント間のサーフェスを考慮しません。 鳥や飛行機が地表の上を飛んだ際に 2 つのポイント間を移動する距離を示しています。

[距離累積 (Distance Accumulation)] は、直線距離を計算するための主要なツールです。 最も簡単に使用する場合、ソースの場所を指定するだけです。 ソース以外の各セルに対して、このツールは最も近いソースの場所までの直線距離を計算します。

直線で接続されたサーフェス上の 2 つのポイント

バリアが存在する場合、直線距離を変更することができます。 また、サーフェスの起伏を考慮する際に、実際に到達する距離を組み込むことによっても、直線距離は変化します。

直線距離解析の例

直線距離は最も一般的な距離計算の 1 つで、次のような幅広い用途に対応します。

  • 企画部門が、提案された住宅開発が湿地の法的緩衝地帯に含まれているかどうかを判断する。
  • シカの適合性モデルで、各場所が河川からどれくらい離れているかを計算し、生成された距離サーフェスを入力基準として使用できるようにする。
  • 怪我をしたハイカーをヘリコプターで救助する際に、最も近い病院を決定する。
  • 油が流出した際に、流出地点から 5,000 メートル以内のすべての鳥の営巣地を特定する。
  • 単純な空港ノイズ モデルでは、中間ステップとして滑走路からの距離を使用することがあります。

直線距離解析

距離の解析は、概念的に、次の関連機能領域に分けることができます。

最初の機能エリアから、直線距離の計算を以下の図に示します。 このシナリオには、一連の 4 つの森林管理事務所 (紫のドット) と数本の河川 (青いライン) が含まれています。

4 つのポイントからの直線距離を示すマップ
ソース以外の各セルから最も近い管理事務所 (紫色のポイント) までの直線距離が示されています。 河川が表示されます (青色のライン)

最も近い管理事務所までの直線方向は、以下の図のように求めることもできます。

4 つのポイントからの直線方向を示すマップ
ソース以外の各セルから最も近い管理事務所までの直線方向が示されています。 方向はコンパスの方向 (0 〜 360) に基づいています。

直線距離ラスターの作成

直線距離ラスターを作成するには、次の手順を実行します。

  1. [距離累積] ツールを開きます。
  2. [入力ラスター、またはフィーチャ ソース データ] パラメーターに、距離を計算するソースを指定します。
  3. 出力距離累積ラスターに名前を付けます。
  4. [実行] をクリックします。

直線距離の計算と出力

次のセクションでは、[距離累積 (Distance Accumulation)] ツールを使用して直線距離を計算する際に、十分な情報に基づいた決定を下すのに必要な基本情報について説明します。

入力ソース

入力ソースは、距離を計算する場所を特定します。 ソースの例としては、道路、河川、中心街、鳥の巣の場所、湿地などがあります。 ソース入力がラスターの場合、ソース セルの値のみが含まれ、他のセルは NoData である必要があります。 ソース入力がフィーチャクラスの場合、ツールの実行時にラスターに変換されます。

計算

ソース以外の各セルの中心から各ソース セルの中心までの直線距離が計算されます。 ソース以外の各セルには、ソースへの最短距離が割り当てられます。

概念的には、アルゴリズムは次のように動作します。ソース以外の各セルに対して、x_max と y_max を三角形の斜辺以外の 2 本の辺として斜辺を計算することで、各ソース セルまでの距離が求まります。 この計算によって、隣接セル間に構築された一連のエッジに沿ったネットワーク距離が求まるのではなく、真の直線ユークリッド距離が導出されます。 ソースまでの最短距離が求まった後、その距離が指定した最大距離よりも小さい場合、その値が出力ラスター上のセル位置に割り当てられます。 最大距離が指定されている場合、その距離よりも遠いソース以外のセルに NoData が設定されます。

ソース セルとソース以外のセル間の直線距離

距離ラスターの出力値は浮動小数点値です。 セルが複数のソースから等しい距離にある場合、そのセルはスキャン プロセスで最初に検出されたソースに割り当てられます。

上述の説明は、値の導出方法を概念的に示しています。 実際のアルゴリズムでは、2 回のスキャンの連続処理を使用して情報が計算されます。 処理時間は、ソース セルの数やソース セルの配置方法ではなく、解析ウィンドウ内の合計セル数によって異なります。

直線距離の出力

[距離累積 (Distance Accumulation)] ツールから複数の出力ラスターを作成できます。 直線距離を計算する際に生成される出力値の意味は、次のとおりです。

距離累積出力ラスター

直線距離累積出力ラスターは、ソース以外のすべてのセルから最も近いソースまでの計測距離を記録します。 記録される距離値の単位は、出力空間参照に基づいたフィートまたはメートルなどの距離単位です。

バック方向出力ラスター

このラスターは、最短パスに沿って最寄りソース セルに向かう、セルからの移動方向を識別します。 バリアが指定されている場合、この方向はそのセルへの直線方向とは異なる可能性があります。

バック方向ラスターは、セルごとの移動方向を出力します。 値の範囲は 0 度から 360 度で、0 はソース セル用に予約されています。 真東 (右) は 90 で、値は時計回りに増加し、180 が南、270 が西、360 が北になります。

バック方向ラスターの重要な用途は、2 つの場所間の最短パスを求めることです。 距離累積ラスターとバック方向ラスターは、[最適パス (ライン) (Optimal Path As Line)] ツールと [最適パス (ラスター) (Optimal Path As Raster)] ツールの入力として必須です。

ソース方向出力ラスター

ソース方向ラスターは、最寄りソース セルの方向を水平角 (度単位) で識別します。

バック方向ラスターと同じ角度表現が使用されますが、浮動小数点の代わりに整数値が割り当てられます。 バリアが特定されていない場合、出力タイプ以外はソース方向ラスターとバック方向ラスターで同じ結果が生成されます。

距離アロケーションと直線距離

[距離累積 (Distance Accumulation)] ツールの関連ツールに [距離アロケーション (Distance Allocation)] ツールがあります。 [距離アロケーション (Distance Allocation)] ツールがアロケーション ラスターも出力することを除いて、すべてのパラメーターと出力は同じです。 各セルに対して、このラスターはそのセルが到達できる最も近いソースを示します。

関連トピック