バリアは、距離を計算する 2 つの場所間に存在する障害物を示します。 バリアには、湖、中央分離帯のある高速道路、山脈などがあります。 バリアが存在する場合、直線距離は変化します。 バリアを迂回するのに必要な追加距離を考慮したうえで、場所間の最短距離を知りたい場合があります。
バリアが道の途中に存在する場合、移動者はバリアの周囲を移動する必要があります。
バリアを追加し、実際に移動するサーフェス距離を組み込むことで、直線距離を調整できます。 調整した直線距離が求まったら、コスト サーフェス、ソース特性、鉛直方向ファクター、水平方向ファクターにより、その距離に到達する速度を制御できます。 バリアとともに上記の速度ファクターのいずれかが指定されている場合、バリアを迂回することが場所間の最小コスト距離になります。
バリアの使用例
バリアを使用すると、次のようなさまざまなシナリオを解決するのに役立ちます。
- 野生動物の調査で、湖を挟んだ 2 つの生息地パッチ間の距離を求める場合。
- 2 つのマリーナ間に半島が存在するときに、ボートがマリーナ間を移動する最短距離を求める場合。
- 迂回する必要がある急な崖が存在する場所で、ハイキング コースのルートを特定する場合。
- 目的地との間に嵐が発生している場合に、飛行機のフライト パスを定義する場合。
バリアを使用した直線距離解析の調整
距離の解析は、概念的に、次の関連機能領域に分けることができます。
- 直線距離を計算し、必要に応じてバリアまたはサーフェス ラスターを使用して計算を調整します。
- 必要に応じて、コスト サーフェス、ソース特性、垂直方向ファクター、および水平方向ファクターにより、その距離に達する速度を決定します。 累積距離ラスターを作成します。
- 最適ネットワーク、特定のパス、またはコリドーを使用し、生成される累積距離サーフェス上に領域を接続します。
最初の機能エリアから、直線距離はバリアを使用して以下の図のように調整されます。 このシナリオには、一連の 4 つの森林管理事務所 (紫のドット) と数本の河川 (青いライン) が含まれています。
直線距離の結果により、ソース以外の各セルから最も近い管理事務所までの距離が特定されます。
移動者はバリアの周囲を移動する必要があるため、バリアによって直線距離が調整されます。
バリアが存在しない場合、直線距離のソース方向ラスターとバック方向ラスターは同じになります。
バック方向ラスターは、各セルに対して、セルから移動して最も近いソースに戻る際の方向を特定します。 バリアが導入されている場合、移動者はバリアの周囲を移動する必要があります。
バリアを含む距離ラスターの作成
バリアを組み込んだ距離ラスターを作成するには、次の手順を実行します。
- 距離累積 (Distance Accumulation) ツールを開きます。
- [入力ラスター、またはフィーチャ ソース データ] パラメーターでソースを指定します。
- 出力距離ラスターに名前を付けます。
- [入力バリア ラスターまたはフィーチャ データ] パラメーターでバリアを特定します。
- 他に必要なパラメーターがあれば指定します。
- [実行] をクリックします。
バリアは距離の計算に影響を与えます。
下のセクションでは、[距離累積 (Distance Accumulation)] ツールを使用したバリアによる直線距離の調整について説明します。
バリアの指定
バリアを迂回する必要がある場合、バリアによって距離の計算が変化することがあります。 バリアには、湖、中央分離帯のある高速道路、山脈、河川、崖などがあります。 フィーチャまたはラスター データとして、バリアが存在する場所の指定に使用できる入力パラメーターがあります。 このパラメーターの入力がフィーチャクラスの場合、ツールの実行時にラスターに変換されます。
バリアは他の方法でも定義できます。 サーフェス ラスター、コスト サーフェス、鉛直方向ファクター ラスター、または水平方向ファクター ラスターが指定されている場合、これらのラスター内の NoData セルはバリアと見なされます。 マスク環境が設定されている場合、マスクでカバーされるエリアの外側にある場所 (NoData セル) もバリアと見なされます。 いずれの場合も、バリアの移動は禁止されています。 必要に応じて、バリア内の移動を許容する亀裂を防ぐため、すべてのバリアが少し厚化されます。 詳細については、下記の「バリアの厚化による亀裂の防止」セクションをご参照ください。
要約すると、指定されていれば、入力サーフェス ラスター、コスト サーフェス ラスター、鉛直方向ファクター ラスター、および水平方向ファクター ラスターに有効な値が存在する場所、および解析環境で定義されたマスク エリア内の場所を横切る移動は許可されます。 バリアの入力で定義された場所、マスク エリアの外側にある場所 (NoData セル)、またはサーフェス ラスター、コスト サーフェス ラスター、鉛直方向ファクター ラスター、または水平方向ファクター ラスターの値が NoData である場所を横切る移動は許可されません。
バリアの出力距離ラスターへの影響
距離解析の実行時に生成される次の出力ラスターは、バリアによる影響を受けます。
- 距離累積ラスター
- バック方向ラスター
- ソース方向ラスター
距離累積ラスター
ソース以外の各セルに対して、出力距離累積ラスターは、最も近いソースまたは最小コスト ソースまでの累積距離を計算します。 バリアの入力が指定されている場合、距離値はバリア セルの迂回を考慮します。
例としては、既存の電線に近いことが望ましい新しい複合ビルの配置が挙げられます。 次の図に、ソース以外の各セルから最も近い電線 (青色のライン) までの距離を示します。 バリアの入力は指定されていません。 生成された距離ラスターが表示され、緑色はより近い場所を示しています。
地域の規制により、尾根の頂を越えて新しい電線を配置することはできません。 次の図は、稜線 (紫色のライン) をバリアとして追加した場合の影響を示しています。 稜線の反対側の場所は、稜線の周囲を移動するのに必要な距離が増加したため、電線から遠くなっています (薄い茶色)。
注意:
バリアによってソースから切断される場所が発生した場合、切断されたセルまでの距離は計算されません。
バック方向ラスターとソース方向ラスター
距離累積では、バック方向ラスターとソース方向ラスターを作成することもできます。 ソース以外の各セルに対して、バック方向ラスターは、ソース以外のセルから出発して最も近いソースまたは最小コスト ソースに戻る際に移動する方向を特定します。
ソース以外の各セルに対して、ソース方向ラスターは、最も近いソースまたは最小コスト ソースへの方向を特定します。 直線距離を計算する際にバリアが存在しない場合、これら 2 つの出力は同じですが、バリアが存在する場合は異なります。
バック方向ラスターとソース方向ラスターには、コンパスと同じ規則が使用されます。 値の範囲は 0 度から 360 度で、0 はソース セル用に予約されています。 真東 (右) は 90 で、値は時計回りに増加し、180 が南、270 が西、360 が北になります。 2 つのラスターは実際の方向を報告しますが、バック方向ラスターは度数を浮動小数点値で報告し、ソース方向ラスターは度数を整数で報告します。
たとえば、カヤック漕ぎと目的地の間に陸地の半島が存在する場合、カヤック漕ぎが目的地 (Jim のカヤック レンタル店) に到着するまでの移動距離を計算する際の、バック方向とソース方向の出力の違いを示します。 半島はカヤック漕ぎ (移動者) に対するバリアになります。 以下の図で、バック方向ラスターでは、カヤック漕ぎは陸地を迂回する必要があるため、カヤック漕ぎが Jim のカヤック レンタル店までカヤックを漕いで戻る際にセルから移動する方向が各セルに格納されます。 この移動方向は、代表的なセルに対して濃い青色の矢印で示されています。 ソース方向ラスターでは、各セルに Jim のカヤック レンタル店に戻る直線方向が格納されます。 この方向は薄い青色の矢印で示されています。 2 つの方向は異なっています。 濃い青色の矢印は半島を迂回するカヤック漕ぎのガイドになる一方、薄い青色の矢印は、半島に関係なく任意の場所から Jim のカヤック レンタル店に戻る直線方向を示します。
バック方向ラスターの重要な用途は、目的地から最も近いソースに戻る最短パスを生成することです。 以下の図で、出力バック方向ラスターは 最適パス (ライン) (Optimal Path As Line) ツールに入力され、カヤック漕ぎ (紫色のポイント) がボートの係留場所 (黄色のポリゴン) を回避して半島 (バリア) の周囲を通り、カヤック レンタル エリアに戻る際の最短経路を定義しています。
バリアによって、最も近いソースまたは最小コスト ソースが変化することがあります。
バリアが追加されると、到達するのに最も近いソース セルまたはコストが最も低いソース セルが変化する可能性があります。 たとえば、以下の最初の図に、2 つのソース (S1 と S2) があります。 ソース以外のセル x に最も近いソースは S1 です。
次の画像では、水平方向のバリアが追加されています。 x に最も近いソースは S2 になりました (バリアの右端の周囲にライト グレーのパスで示されています)。
その結果、バリアの存在により、バック方向ラスターのセルの出力値が変化する可能性があります。 この例では、バリアを含まないバック方向ラスターで x に割り当てられる値は 180.0 になります。 バリアを含む場合、x のバック方向は 121.5 になります。
ソース方向ラスターで、バリアを含まないセル x に最も近いソースは、南 (180 度の方向) の S1 です。 水平方向のバリアが追加されると、x に割り当てられるソース方向は約 135 度 (薄い青色の矢印) になり、この方向は x からソース S2 への直線方向になりますが、ルート内の方向ではありません。 バリアの結果、x から S2 へのバック方向とソース方向は異なります。
出力距離アロケーション ラスターの x の値は、バリアを含まない S1 からバリアを含む S2 に変化します。
コスト サーフェスとバリアが指定されている場合、ソース以外のセル x に割り当てられる値には次の 3 つのシナリオが考えられます。
- バリアを含まない S1 が最小コスト ソースだった場合、バリアが存在すると、S2 が、S1 に割り当てられた値よりも大きい累積コストを持つ最小コスト ソースになります。
- S2 がバリアを含まない最小コスト ソースだった場合、当初ソース S2 は S1 よりも到達コストが低くなっていました。 バリアを含む場合でも、S2 は引き続き到達コストが最も低いソースですが、合計累積コストは増加します。
- S2 はバリアを含まない最小コスト ソースでしたが、S2 に到達するパスはバリアの近くを通っていません。 バリアを含む場合でも、S2 の累積コストは変化しません。 バリアは影響を与えていませんでした。
コスト サーフェスを含む場合、x の最小コスト ソースが S1 から S2 に変化すると、ソース方向ラスターも変化します。 ただし、当初 S2 が最小コスト ソースだった場合、x のソース方向は変化しません。
バリアの厚化による亀裂の防止
道路や河川などのバリアは、線形フィーチャとして表すことができます。 この場合、距離演算を実行する前にライン フィーチャをラスター化する必要があります。 ラスターとして、線形フィーチャの厚さはちょうど 1 セル分になります。 バリアが完全に水平または垂直であれば、バリアの性質は維持されますが、バリアが斜めの場合もあります。 この場合、移動者がバリアの亀裂に相当するものをすり抜けることは幾何学的に可能です。
この事象を防ぐため、距離累積 (Distance Accumulation) ツールと距離アロケーション (Distance Allocation) ツールは、斜めのセクションを自動的に 1 セル分厚くします。 移動者が斜めに通過できないため、バリアの入力は有効なバリアのままです。
入力バリアがラスターの場合、バリアを厚くする処理は、1 セル幅の斜めのセルに対しても行われます。
ツール パラメーターでデータセットとして指定したバリアはコスト サーフェスにマージされ、必要に応じて、コスト サーフェス内の NoData セルが厚くなります。 その結果、バリアがデータセットで指定されているか、コスト サーフェスでその位置が NoData に割り当てられているかに関係なく、バリアは厚くなり、潜在的な亀裂を防ぎます。