最近接(Near) (解析)
サマリ
検索範囲内で、入力フィーチャの各フィーチャから近接フィーチャの最近接フィーチャまでの距離を特定します。
図
使用法
-
入力フィーチャの属性テーブルに、次の 2 つのフィールドが追加されます。フィールドがすでに存在する場合、フィールドの値が更新されます。
- NEAR_FID:最近接フィーチャのフィーチャ ID を保存します。
- NEAR_DIST:入力フィーチャから最近接フィーチャまでの距離を保存します。
-
検索半径内でフィーチャが見つからない場合は、NEAR_FID と NEAR_DIST の値が -1 になります。
近接フィーチャとオプション パラメータのエントリの説明にあるように、オプションで NEAR_X、NEAR_Y、NEAR_ANGLE、および NEAR_FC フィールドを入力フィーチャの属性テーブルに追加できます。フィールドがすでに存在する場合、フィールドの値が更新されます。検索範囲内にフィーチャが見つからない場合、NEAR_X と NEAR_Y の値は-1、NEAR_ANGLE の値はゼロ(0)、NEAR_FC の値は NULL になります。
-
入力フィーチャと近接フィーチャには、ポイント、マルチポイント、ライン、またはポリゴンを指定できます。
-
近接フィーチャにはさまざまな形状タイプの 1 つ以上のフィーチャクラスを含めることができます。
-
入力フィーチャと近接フィーチャは同じデータセットに属していてもかまいません。入力フィーチャの最近接フィーチャがそれ自体の場合([NEAR_DIST] の値が 0)、このフィーチャは無視されて、2 番目に近いフィーチャが検索されます。
構文
パラメータ | 説明 | データ タイプ |
in_features |
ポイント、ポリライン、ポリゴン、またはマルチポイント タイプの入力フィーチャ。 | Feature Layer |
near_features [near_features,...] |
入力フィーチャに最も近いフィーチャを見つけるための最近接フィーチャ。近接フィーチャを 1 つ以上入力できます。各エントリは、ポイント、ポリライン、ポリゴン、またはマルチポイント タイプになります。近接フィーチャを複数指定した場合、それらを含むソース フィーチャクラスのパスを格納する新しいフィールド NEAR_FC が入力テーブルに追加されます。 | Feature Layer |
search_radius (オプション) |
近接フィーチャを検索するための半径を指定します。この半径内に存在する近接フィーチャから最近接フィーチャが求められます。値を何も指定しない場合は、デフォルト(空の)半径が使用されます。つまり、すべての近接フィーチャが計算対象となります。入力フィーチャのデフォルト単位の代わりに、別の距離単位を指定できます。 | Linear unit |
location (オプション) |
最近接フィーチャの位置を表す X 座標と Y 座標を、それぞれ新しい NEAR_X フィールドと NEAR_Y フィールドに書き込むかどうかを指定します。
| Boolean |
angle (オプション) |
近接する角度値(10 進表記)が計算され、新しい NEAR_ANGLE フィールドに書き込まれます。近接角度は、X 軸(水平軸)から、入力フィーチャとその最近接フィーチャをつなぐ直線までの角度を指しており、0 ~ 180 度または 0 ~ -180 度の範囲になります。
| Boolean |
コードのサンプル
次の Python ウィンドウ スクリプトは、イミディエイト モードで最近接関数を使用する方法を示しています。
import arcpy arcpy.env.workspace = "C:/data/city.gdb" ## find the nearest road from each house arcpy.Near_analysis('houses', 'roads')
次の Python スクリプトは、スタンドアロン スクリプトで最近接関数を使用する方法を示しています。
# Name: Near.py # Description: Finds nearest features from input feature class to near feature class. # Author: ESRI import arcpy from arcpy import env # Set workspace environment env.workspace = "C:/data/city.gdb" # set local variables inFeatures = "houses" nearFeatures = "parks" # find features only within search radius searchRadius = "5000 Meters" # find location & angle of nearest features location = "true" angle = "true" # execute the function arcpy.Near_analysis(inFeatures, nearFeatures, searchRadius, location, angle)