ルートに沿ってフィーチャを配置(Locate Features Along Routes) (リニア リファレンス)
サマリ
入力フィーチャ(ポイント、ライン、またはポリゴン)とルート フィーチャの交差を計算して、新規イベント テーブルにルートとメジャー情報を書き出します。
使用法
-
出力テーブルは dBASE ファイルでもジオデータベース テーブルでもかまいません。
-
入力フィーチャがポイントの場合は、イベント タイプを POINT にする必要があります。また、入力フィーチャがラインまたはポリゴンの場合は、イベント タイプを LINE にする必要があります。
-
入力フィーチャとターゲット ルートが厳密にオーバーレイしている場合に、最良の結果を得ることができます。
注意:入力フィーチャとターゲット ルートの間の相違点を克服するために検索半径やクラスタ許容値を大きくすると、予期せぬ結果となることがあります。
-
このツールで処理する入力フィーチャの数を減らすには、選択セットを含むレイヤを入力として指定します。詳細については、「レイヤとテーブル ビューの使用」を参照してください。
-
ArcMap で出力テーブルを表示するには、[ルート イベント レイヤの作成] ツールを使用するか、ArcMap で [ルート イベント レイヤの作成] コマンドを使用します。
構文
パラメータ | 説明 | データ タイプ |
in_features |
入力ポイント、ライン、またはポリゴン フィーチャ。 | Feature Layer |
in_routes |
入力フィーチャを交差させるルート。 | Feature Layer |
route_id_field |
各ルートを一意に識別する値を格納したフィールド。このフィールドには数値または文字を使用できます。 | Field |
radius_or_tolerance |
入力フィーチャがポイントの場合は、検索半径に数値を指定して、ターゲット ルートの検索対象となる領域を各ポイントからの距離で定義します。 入力フィーチャがラインの場合の検索許容値は、入力ラインとターゲット ルートの間の最大許容距離を表す数値であるクラスタ許容値です。 入力フィーチャがポリゴンの場合、このパラメータは無視され、検索半径は使用されません。 | Linear unit |
out_table |
作成するテーブル。 | Table |
out_event_properties |
出力イベント テーブルに書き出されるルート ロケーション フィールドとイベント タイプで構成されるパラメータ。
| Route Measure Event Properties |
route_locations (オプション) |
ルート沿いのポイントを検索する場合、ポイントによっては、検索半径に複数のルートが存在することがあります。ルート沿いのラインまたはポリゴンを検索する場合、このパラメータは無視されます。
| Boolean |
distance_field (オプション) |
出力イベント テーブルに「DISTANCE」という名称のフィールドを追加するかどうかを指定します。このフィールドの値には、指定した検索半径の単位が使用されます。ルート沿いのラインまたはポリゴンを検索する場合、このパラメータは無視されます。
| Boolean |
zero_length_events (オプション) |
ルート沿いのポリゴンを検索するときには、始点メジャーと終点メジャーが同一となるイベントの作成が可能です。ルート沿いのポイントまたはラインを検索する場合、このパラメータは無視されます。
| Boolean |
in_fields (オプション) |
出力イベント テーブルに、ルート ロケーション フィールドと、入力フィーチャからのすべての属性を格納するかどうかを指定します。
| Boolean |
m_direction_offsetting (オプション) |
M 方向またはデジタイズされた方向のどちらに基づいてオフセット距離を計算するかを指定します。distance_field パラメータ値に [DISTANCE] を指定している場合は、出力イベント テーブルに距離が追加されます。
| Boolean |
コードのサンプル
次の Python スクリプトは、Python ウィンドウで LocateFeaturesAlongRoutes(ルートに沿ってフィーチャを配置)関数を使用する方法を示します。
import arcpy
from arcpy import env
env.workspace = "C:/Data"
arcpy.LocateFeaturesAlongRoutes_lr("rail_segments.shp", "rail_routes.shp", "rkey", "0.5 Feet", "locate_lines", "rkey LINE fmp tmp")
次の Python スクリプトは、スタンドアロン Python スクリプトでの LocateFeaturesAlongRoutes(ルートに沿ってフィーチャを配置)関数の使用方法を示しています。
# Name: LocateFeaturesAlongRoutes_Example1.py
# Description: Locate shapefile lines along shapefile routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
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)
次の Python スクリプトは、ファイル ジオデータベース データを使用し、スタンドアロン Python スクリプトで LocateFeaturesAlongRoutes(ルートに沿ってフィーチャを配置)関数を使用する方法を示します。
# Name: LocateFeaturesAlongRoutes_Example2.py
# Description: Locate personal geodatabase points along file geodatabase routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
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)
次の Python スクリプトは、スタンドアロン Python スクリプトでパーソナル ジオデータベース データにLocateFeaturesAlongRoutes(ルートに沿ってフィーチャを配置)関数を使用する方法を示しています。
# Name: LocateFeaturesAlongRoutes_Example3.py
# Description: Locate personal geodatabase points along personal geodatabase routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data/Pitt.mdb"
# 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)
次の Python スクリプトは、スタンドアロン Python スクリプトで SDE データについて LocateFeaturesAlongRoutes(ルートに沿ってフィーチャを配置)関数を使用する方法を示しています。
# Name: LocateFeaturesAlongRoutes_Example4.py
# Description: Locate enterprise geodatabase polygons along enterprise geodatabase routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "Database Connections/Connection to Jerry.sde"
# Set local variables
feats = gp.QualifyTableName("counties", wkspc) # standalone feature class
rts = gp.QualifyTableName("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_DIRECTION")