最近接 3D (Near 3D) (3D Analyst)

概要

各入力フィーチャから、1 つ以上の近接フィーチャクラス内での最近接フィーチャまでの 3 次元距離を計算します。

使用法

  • すべての入力フィーチャには Z 値が含まれている必要があります。また、ジオメトリ タイプがサポートされています。同じフィーチャクラス内の最近隣フィーチャを特定するために、入力フィーチャを近傍フィーチャとして指定することもできます。

  • 入力フィーチャの属性テーブルに次のフィールドを追加できます。

    • NEAR_FID - 最近接フィーチャの FID。-1 の値は、指定された検索範囲内に一致するフィーチャが見つからなかったことを示します。
    • NEAR_DIST - 入力フィーチャ上の最近接ポイントと最近接フィーチャ上の最近接ポイントの間の 2D 距離 (水平距離)。
    • NEAR_DIST3 - 入力フィーチャ上の最近接ポイントと最近接フィーチャ上の最近接ポイントの間の 3D 距離 (傾斜距離)。
    • NEAR_DELTX - 入力フィーチャ上の最近接ポイントから最近接フィーチャ上の最近接ポイントまでの X 軸に沿った距離。
    • NEAR_DELTY - 入力フィーチャ上の最近接ポイントから最近接フィーチャ上の最近接ポイントまでの Y 軸に沿った距離。
    • NEAR_DELTZ - 入力フィーチャ上の最近接ポイントから最近接フィーチャ上の最近接ポイントまでの Z 軸に沿った距離。
    • NEAR_FROMX - 最近接フィーチャの入力フィーチャ上の最近接ポイントの X 座標。
    • NEAR_FROMY - 最近接フィーチャの入力フィーチャ上の最近接ポイントの Y 座標。
    • NEAR_FROMZ - 最近接フィーチャの入力フィーチャ上の最近接ポイントの Z 座標。
    • NEAR_X - 最近接フィーチャ上の最近接ポイントの X 座標。
    • NEAR_Y - 最近接フィーチャ上の最近接ポイントの Y 座標。
    • NEAR_Z - 最近接フィーチャ上の最近接ポイントの Z 座標。
    • NEAR_ANG_H - 最近接ポイントに対する水平方向の演算角度 (単位: 度)。
    • NEAR_ANG_V - 最近接ポイントに対する標高の角度 (単位: 度)。ゼロは水平方向、90 は垂直上向き方向、-90 は垂直下向き方向です。
    • NEAR_FC - 最近接フィーチャを含むフィーチャクラスのパス。このフィールドは、複数の最近接フィーチャが指定された場合のみ追加されます。
    メモ:

    すでに上記のフィールドが存在している場合は、その値が更新されます。

構文

arcpy.3d.Near3D(in_features, near_features, {search_radius}, {location}, {angle}, {delta})
パラメーター説明データ タイプ
in_features

フィーチャが最近接フィーチャに関する情報の属性を持つ入力フィーチャクラス

Feature Layer
near_features
[near_features,...]

入力フィーチャへの近接度が計算される 1 つ以上のフィーチャ。複数のフィーチャクラスが指定されると、最も近いフィーチャがどの近接フィーチャクラスに含まれていたかを特定する NEAR_FC という名前のフィールドが入力フィーチャクラスに追加されます。

Feature Layer
search_radius
(オプション)

特定の入力からの最近接フィーチャを決定する最大距離。この値を指定しない場合、任意の距離で最近接フィーチャが決定されます。

Linear Unit
location
(オプション)

入力の最近接ポイントおよび近接フィーチャの座標を入力の属性テーブルに追加するかどうかを決定します。

  • NO_LOCATION座標を入力フィーチャに追加しません。これがデフォルトです。
  • LOCATION座標を入力フィーチャに追加します。
Boolean
angle
(オプション)

入力フィーチャと最近接フィーチャ間の水平方向の演算角度および垂直方向の角度を入力属性テーブルに追加するかどうかを決定します。

  • NO_ANGLE角度を入力の属性テーブルに追加しません。これがデフォルトです。
  • ANGLE水平方向の演算角度および垂直方向の角度を入力の属性テーブルの NEAR_ANG_H および NEAR_ANG_V フィールドに追加します。
Boolean
delta
(オプション)

入力フィーチャおよび最近接フィーチャ間の X、Y、および Z 軸に沿った距離を入力属性テーブルに追加するかどうかを決定します。

  • NO_DELTA入力属性テーブルに距離を追加しません。これがデフォルトです。
  • DELTAX、Y、および Z 軸に沿った距離を NEAR_DELTXNEAR_DELTY、および NEAR_DELTZ フィールドで計算します。
Boolean

派生した出力

名前説明データ タイプ
out_feature_class

更新された入力フィーチャ。

フィーチャ レイヤー

コードのサンプル

Near3D (最近接 3D) の例 1 (Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

arcpy.env.workspace = "C:/data"
arcpy.Near3D_3d("points_3D.shp", "buildings_multipatch.shp", "30", "LOCATION", "ANGLE", "DELTA")
Near3D (最近接 3D) の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''****************************************************************************
Name: Near 3D Example
Description: This script demonstrates how to use
             the Near 3D tool to identify the nearest z-aware features
             that satisfy the results from a queried feature.
****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'
# Set Local Variables
inFC = 'homes.shp'
nearFC = 'radiotowers.shp'
# See the 'Building an SQL expression' topic for more information
# Query the field 'MATERIAL' for the string 'Reinforced Concrete'
SQL_Expression = "'"'MATERIAL'"' = 'Reinforced Concrete'"
#Execute Make Feature Layer
arcpy.MakeFeatureLayer_management(nearFC, 'Near Layer', SQL_Expression)
result = arcpy.GetCount_management('Near Layer')
if int(result.getOutput(0)) == 0:
    arcpy.AddMessage('{0} has no features that satisfy the query: {1}'\
         .format(nearFC, SQL_Expression))
else:
    #Execute Near3D
    arcpy.Near3D_3d(inFC, 'nearLayer', '', 'LOCATION', 'ANGLE')

ライセンス情報

  • Basic: 次のものが必要 3D Analyst
  • Standard: 次のものが必要 3D Analyst
  • Advanced: 次のものが必要 3D Analyst

関連トピック