ルートに沿ってフィーチャを配置 (Locate Features Along Routes) (リニア リファレンス)

概要

入力フィーチャ (ポイント、ライン、またはポリゴン) とルート フィーチャの交差を計算して、新規イベント テーブルにルートとメジャー情報を書き出します。

使用法

  • 出力テーブルは dBASE ファイルでもジオデータベース テーブルでもかまいません。

  • 入力フィーチャがポイントの場合は、イベント タイプをポイントにする必要があります。また、入力フィーチャがラインまたはポリゴンの場合は、イベント タイプをラインにする必要があります。

  • 入力フィーチャとターゲット ルートが厳密にオーバーレイしている場合に、最良の結果を得ることができます。

    注意:

    入力フィーチャとターゲット ルートの間の相違点を克服するために検索範囲やクラスター許容値を大きくすると、予期せぬ結果となることがあります。

  • このツールで処理する入力フィーチャの数を減らすには、選択セットを含むレイヤーを入力として指定します。

  • 出力テーブルは、[ルート イベント レイヤーの作成 (Make Route Event Layer)] ツールを使用してマップに表示できます。

構文

arcpy.lr.LocateFeaturesAlongRoutes(in_features, in_routes, route_id_field, radius_or_tolerance, out_table, out_event_properties, {route_locations}, {distance_field}, {zero_length_events}, {in_fields}, {m_direction_offsetting})
パラメーター説明データ タイプ
in_features

入力ポイント、ライン、またはポリゴン フィーチャ。

Feature Layer
in_routes

入力フィーチャを交差させるルート。

Feature Layer
route_id_field

各ルートを一意に識別する値を格納したフィールド。このフィールドには数値または文字を使用できます。

Field
radius_or_tolerance

入力フィーチャがポイントの場合は、検索範囲に数値を指定して、ターゲット ルートの検索対象となる領域を各ポイントからの距離で定義します。

入力フィーチャがラインの場合の検索許容値は、入力ラインとターゲット ルートの間の最大許容距離を表す数値であるクラスター許容値です。

入力フィーチャがポリゴンの場合、このパラメーターは無視され、検索範囲は使用されません。

Linear Unit
out_table

作成するテーブル。

Table
out_event_properties

出力イベント テーブルに書き出されるルート ロケーション フィールドとイベント タイプで構成されるパラメーター。

  • ルート識別フィールド: 各イベントがあるルートを示す値が格納されるフィールド。
  • イベント タイプ: 出力イベント テーブルに格納されるイベントのタイプ (ポイントまたはライン)。
    • ポイント: ポイント イベントは、ルート沿いの正確な位置で発生します。メジャーを 1 つだけ指定する必要があります。
    • ライン: ライン イベントでは、ルートの一部分を定義します。始点メジャーと終点メジャーの両方のフィールドを指定する必要があります。
  • 始点メジャー値フィールド: メジャー値が格納されるフィールド。イベント タイプがポイントまたはラインの場合は必須です。イベント タイプがポイントの場合は、このパラメーターのラベルが [メジャー値フィールド] になることに注意してください。
  • 終点メジャー値フィールド: メジャー値が格納されるフィールド。イベント タイプがラインの場合は必須です。
Route Measure Event Properties
route_locations
(オプション)

ルート沿いのポイントを検索する場合、ポイントによっては、検索範囲に複数のルートが存在することがあります。ルート沿いのラインまたはポリゴンを検索する場合、このパラメーターは無視されます。

  • FIRST最も近いルート ロケーションだけが出力イベント テーブルに書き出されます。これがデフォルトです。
  • ALL(検索範囲内の) すべてのルート ロケーションが出力イベント テーブルに書き出されます。
Boolean
distance_field
(オプション)

出力イベント テーブルに「DISTANCE」という名称のフィールドを追加するかどうかを指定します。このフィールドの値には、指定した検索範囲の単位が使用されます。ルート沿いのラインまたはポリゴンを検索する場合、このパラメーターは無視されます。

  • DISTANCEポイントからルートまでの距離を格納したフィールドが出力イベント テーブルに追加されます。これがデフォルトです。
  • NO_DISTANCE出力イベント テーブルには、ポイントからルートまでの距離を格納したフィールドが追加されません。
Boolean
zero_length_events
(オプション)

ルート沿いのポリゴンを検索するときには、始点メジャーと終点メジャーが同一となるイベントの作成が可能です。ルート沿いのポイントまたはラインを検索する場合、このパラメーターは無視されます。

  • ZERO出力イベント テーブルに長さゼロのライン イベントが書き出されます。これがデフォルトです。
  • NO_ZERO出力イベント テーブルには、長さゼロのライン イベントが書き出されません。
Boolean
in_fields
(オプション)

出力イベント テーブルに、ルート ロケーション フィールドと、入力フィーチャからのすべての属性を格納するかどうかを指定します。

  • FIELDS出力イベント テーブルに、ルート ロケーション フィールドと、入力フィーチャからのすべての属性を格納します。これがデフォルトです。
  • NO_FIELDS出力イベント テーブルに、ルート ロケーション フィールドと、入力フィーチャからの ObjectID フィールドだけを格納します。
Boolean
m_direction_offsetting
(オプション)

M 方向またはデジタイズされた方向のどちらに基づいてオフセット距離を計算するかを指定します。distance_field="DISTANCE" である場合、出力イベント テーブルに距離が含められます。

  • M_DIRECTON出力イベント テーブルの距離の値は、ルートの M 方向に基づいて計算されます。ルートの M 方向の左にある入力フィーチャには正のオフセット値 (+) が割り当てられ、M 方向の右のフィーチャには負のオフセット値 (-) が割り当てられます。これがデフォルトです。
  • NO_M_DIRECTION出力イベント テーブルの距離の値は、ルートのデジタイズされた方向に基づいて計算されます。ルートのデジタイズ方向の左にある入力フィーチャには、負のオフセット値 (-) が割り当てられます。デジタイズ方向の右のフィーチャには、正のオフセット値 (+) が割り当てられます。
Boolean

コードのサンプル

LocateFeaturesAlongRoutes (ルートに沿ってフィーチャを配置) の例 1 (Python ウィンドウ)

次の Python スクリプトは、Python ウィンドウで LocateFeaturesAlongRoutes 関数を使用する方法を示します。

import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.LocateFeaturesAlongRoutes_lr("rail_segments.shp", "rail_routes.shp", 
                                   "rkey", "0.5 Feet", "locate_lines", 
                                   "rkey LINE fmp tmp")
LocateFeaturesAlongRoutes (ルートに沿ってフィーチャを配置) の例 2 (スタンドアロン スクリプト)

次の Python スクリプトは、スタンドアロン Python スクリプトで LocateFeaturesAlongRoutes 関数を使用する方法を示しています。

# Name: LocateFeaturesAlongRoutes_Example2.py
# Description: Locate shapefile lines along shapefile routes.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data"
# Set local variables
feats = "rail_segments.shp"
rts = "rail_routes.shp"
rid = "rkey"
tol = "0.5 Feet"
tbl = "locate_lines"
props = "rkey LINE fmp tmp" 
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, tol, tbl, props)
LocateFeaturesAlongRoutes (ルートに沿ってフィーチャを配置) の例 3 (スタンドアロン スクリプト)

次の Python スクリプトは、ファイル ジオデータベース データを使用し、スタンドアロン Python スクリプトで LocateFeaturesAlongRoutes 関数を使用する方法を示します。

# Name: LocateFeaturesAlongRoutes_Example3.py
# Description: Locate personal geodatabase points along file geodatabase routes.
# Import system modules 
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data/Pitt.gdb"
# Set local variables
feats = "rail/crossings"  # crossings is in the rail feature dataset 
rts = "rail/routes"  # routes is in the rail feature dataset
rid = "rkey"
rad = "10 Feet"
tbl = "locate_points"
props = "rkey POINT mp" 
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, rad, tbl, props)
LocateFeaturesAlongRoutes (ルートに沿ってフィーチャを配置) の例 4 (スタンドアロン スクリプト)

次の Python スクリプトは、エンタープライズ ジオデータベース データを使用し、スタンドアロン Python スクリプトで LocateFeaturesAlongRoutes 関数を使用する方法を示します。

# Name: LocateFeaturesAlongRoutes_Example4.py
# Description:  Locate enterprise geodatabase polygons along enterprise geodatabase routes.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/MyProject/myConn.sde"
# Set local variables
feats = arcpy.ValidateTableName("counties", wkspc)  # standalone feature class
rts = arcpy.ValidateTableName("rail_routes", wkspc)  # standalone feature class
rid = "rkey"
tbl = "locate_polys"
props = "rkey LINE fmp tmp" 
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, "#", tbl, props, "#", "#", 
                                   "NO_ZERO", "M_DIRECTON")

ライセンス情報

  • Basic: はい
  • Standard: はい
  • Advanced: はい

関連トピック