競合検索(Find Conflicts) (カバレッジ)
サマリ
指定された距離に基づいて、単純化された建物が重なり合っている場所、または互いに近づきすぎている場所を検索します。
図
使用法
-
単純化された建物の競合検索は、[建物ポリゴンの単純化(Simplify Building)] ツールの後処理の一部として実行されます。したがって、入力カバレッジは [建物ポリゴンの単純化(Simplify Building)] ツールを実行した後に [クリーン(Clean)] ツールの [ポリゴン] オプションを設定して作成したリージョンとして、建物を含んでいる必要があります。
-
このツールは建物同士が指定された距離の範囲内に存在している場所を見つけるのに役立ちます。各建物または接続された建物の各グループの周囲にバッファが作成されます。バッファ同士の重なりは競合を示します。項目 FREQUENCY は out_cover.PAT に追加され、各ポリゴンが共有するバッファの数を保持します。FREQUENCY の値が 1 の場合、競合がないことを意味します。2 以上の値はバッファ同士が重なり合っている数を表し、競合エリアが存在することを示しています。1 つのグループ内で接続している建物は、互いに競合しているとは見なされません。このようなグループの場合、グループの外側の境界のみについて隣接する建物または建物のグループとの競合をチェックします。
-
競合が特定された場合のみ、出力カバレッジが作成されます。入力の建物はリージョンであるため、出力カバレッジ内のバッファもまたサブクラス BUF を持つリージョンになります。競合エリア(2 以上の FREQUENCY 値を持つポリゴン)を選択して表示し、必要な編集を加えることができます。
構文
パラメータ | 説明 | データ タイプ |
in_cover |
[建物ポリゴンの単純化(Simplify Building)] ツールを実行した後に、[ポリゴン] オプションを設定した [クリーン(Clean)] ツールを実行して得られる、サブクラス BLDGSIM と項目 BDS-GROUP を保持したリージョンとして建物を含む入力カバレッジ。 | Coverage |
out_cover |
サブクラス BUF を持ち、建物同士の空間競合を示す、重なり合うリージョン バッファを含む出力カバレッジ。このカバレッジは競合が検出されたときにのみ作成されます。<out_cover> の名前は <in_cover> の名前と異なる必要があります。 | Coverage |
conflict_distance |
競合距離をカバレッジ単位で設定します。この距離の範囲内にある建物が空間競合の対象として見なされます。この距離は 0 よりも大きい値でなければなりません。 | Double |
コードのサンプル
次のスタンドアロン スクリプトは、FindConflicts(競合検索)ツールの使用方法を示しています。
# Name: SimplifyBuilding_Example.py
# Description: Simplifies a building coverage and finds conflicts in the output
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables for SimplifyBuilding
inSimplifyCover = "campus"
outSimplifyCover = "C:/output/tempcampus"
simplificationTolerance = 6
minimumArea = 55
# Set local variables for FindConflicts
inCover = outSimplifyCover
outCover = "C:/output/cartocampus"
conflictDistance = 5.5
# Execute SimplifyBuilding and Clean
arcpy.SimplifyBuilding_arc(inSimplifyCover, outSimplifyCover,
simplificationTolerance, minimumArea, "", "")
arcpy.Clean_arc(outSimplifyCover)
# Execute FindConflicts
arcpy.FindConflicts_arc(inCover, outCover, conflictDistance)