沿路径定位要素 (线性参考)

许可等级:BasicStandardAdvanced

摘要

计算输入要素(点、线或面)与路径要素的交集,并将路径和测量信息写入新的事件表。

用法

语法

LocateFeaturesAlongRoutes_lr (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

由要写入输出事件表的路径位置字段和事件类型组成的参数。

  • 路径标识符字段 - 包含指明每个事件所沿路径的值的字段。
  • 事件类型 - 输出事件表包含的事件类型(POINT 或 LINE)。
    • POINT - 点事件出现在沿路径的确切点位置处。只有一个测量字段是必须指定的字段。
    • LINE - 线事件定义路径的一部分。“测量始于”和“测量止于”都是必须指定的字段。
  • “测量始于”字段 - 包含测量值的字段。在事件类型是 POINT 或 LINE 时必填。请注意,事件类型为 POINT 时,此参数的标注变为“测量字段”。
  • “测量止于”字段 - 包含测量值的字段。在事件类型是 LINE 时必填。
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_DIRECTION基于路径的 M 方向计算输出事件表中的距离值。位于路径 M 方向左侧的输入要素将被赋予正偏移值 (+),位于 M 方向右侧的要素将被赋予负偏移值 (-)。这是默认设置。
  • NO_M_DIRECTION基于路径的数字化方向计算输出事件表中的距离值。位于路径数字化方向左侧的输入要素将被赋予负偏移值 (-),位于路径数字化方向右侧的要素将被赋予正偏移值 (+)。
Boolean

代码实例

LocateFeaturesAlongRoutes 示例 1(Python 窗口)

以下 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")
LocateFeaturesAlongRoutes 示例 2(独立 Python 脚本)

以下 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)
LocateFeaturesAlongRoutes 示例 3(独立 Python 脚本)

以下 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)
LocateFeaturesAlongRoutes 示例 4(独立 Python 脚本)

以下 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)
LocateFeaturesAlongRoutes 示例 5(独立 Python 脚本)

以下 Python 脚本演示了如何在独立 Python 脚本中将 LocateFeaturesAlongRoutes 函数与 SDE 数据结合使用。

# 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")

环境

相关主题

许可信息

ArcGIS for Desktop Basic: 是
ArcGIS for Desktop Standard: 是
ArcGIS for Desktop Advanced: 是
5/10/2014