创建路径事件图层 (线性参考)

描述

使用路径和路径事件创建临时要素图层。

如果使用临时图层(在地图上显示临时图层或由其他地理处理工具使用临时图层),则将执行动态分段。

使用方法

  • 输入表可以是 ArcGIS 支持的任何类型的表。

  • 在使用此工具之前,先对路径使用创建要素图层工具和/或对事件使用创建表视图工具,以降低要处理的路径和事件数。

  • 并不是所有类型的表都有 ObjectID 字段。该工具在使用此类表时,生成的图层将无法选择,也无法供某些地理处理操作有效使用。在使用此工具之前,先考虑使用创建查询表工具添加虚拟 ObjectID 字段。

语法

arcpy.lr.MakeRouteEventLayer(in_routes, route_id_field, in_table, in_event_properties, out_layer, {offset_field}, {add_error_field}, {add_angle_field}, {angle_type}, {complement_angle}, {offset_direction}, {point_event_type})
参数说明数据类型
in_routes

用于定位事件的路径要素。

Feature Layer
route_id_field

包含可唯一识别每条路径的值的字段。

Field
in_table

将沿路径定位行的表。

Table View
in_event_properties

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

  • 路径标识符字段 - 包含指明每个事件所在路径的值的字段。该字段可以是数值或字符。
  • 事件类型 - 输入事件表中的事件类型(POINT 或 LINE)。
    • POINT - 点事件出现在沿路径的确切点位置处。只有“测量始于”是必须指定的字段。
    • LINE - 线事件定义路径的一部分。“测量始于”和“测量止于”都是必须指定的字段。
  • 测量始于字段 - 包含测量值的字段。此字段必须是数值型字段,并且在事件类型是 POINT 或 LINE 时必填。请注意,事件类型为 POINT 时,此参数的标注变为“测量字段”。
  • 测量止于字段 - 包含测量值的字段。此字段必须是数值字段,在事件类型是 LINE 时必填。
Route Measure Event Properties
out_layer

要创建的图层。此图层存储在内存中,所以不需要路径。

Feature Layer
offset_field
(可选)

包含用于使事件从其基础路径偏移的值的字段。该字段必须为数值型。

Field
add_error_field
(可选)

指定是否将名为 LOC_ERROR 的字段添加到创建的临时图层。

  • NO_ERROR_FIELD不添加用于存储定位错误的字段。这是默认设置。
  • ERROR_FIELD添加用于存储定位错误的字段。
Boolean
add_angle_field
(可选)

指定是否将名为 LOC_ANGLE 的字段添加到创建的临时图层。此参数只有在事件类型为 POINT 时才有效。

  • NO_ANGLE_FIELD不添加用于存储定位角的字段。这是默认设置。
  • ANGLE_FIELD添加用于存储定位角的字段。
Boolean
angle_type
(可选)

指定要计算的定位角的类型。仅当 add_angle_field = "ANGLE_FIELD" 时该参数有效。

  • NORMAL将计算法向角(直角)。这是默认设置。
  • TANGENT将计算正切角。
String
complement_angle
(可选)

指定是否计算定位角的余角。仅当 add_angle_field = "ANGLE_FIELD" 时该参数有效。

  • ANGLE不写入余角。只写入计算的角度。这是默认设置。
  • COMPLEMENT写入余角。
Boolean
offset_direction
(可选)

指定将具有正向偏移的路径事件显示在哪一侧。此参数只有在已指定偏移字段时才有效。

  • LEFT具有正向偏移的事件显示在路径左侧。路径的这一侧由测量方向而不一定由数字化方向确定。这是默认设置。
  • RIGHT具有正向偏移的事件显示在路径右侧。路径的这一侧由数字化方向确定。
Boolean
point_event_type
(可选)

指定将点事件视为点要素还是多点要素。

  • POINT将点事件视为点要素。这是默认设置。
  • MULTIPOINT将点事件视为多点要素。
Boolean

代码示例

MakeRouteEventLayer 示例 1(Python 窗口)
import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.MakeRouteEventLayer_lr("route_hwy.shp", "rkey", "accident.dbf", 
                             "rkey POINT mile", "accident_events", "#", 
                             "ERROR_FIELD", "ANGLE_FIELD")
MakeRouteEventLayer 示例 2(独立脚本)

以下 Python 脚本演示了如何在独立 Python 脚本中使用 MakeRouteEventLayer 函数。

# Name: MakeRouteEventLayer_Example2.py
# Description:  Make a POINT event layer. Routes and events are in a shapefile workspace.
# An error field and an angle field are added to the new layer. The new layer can be used
# by other geoprocessing functions.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data"
# Set local variables
rt = "route_hwy.shp"
rid = "rkey" 
tbl = "accident.dbf"
props = "rkey POINT mile"
lyr = "accident_events" 
# Execute MakeRouteEventLayer
arcpy.MakeRouteEventLayer_lr(rt, rid, tbl, props, lyr, "#", "ERROR_FIELD", 
                             "ANGLE_FIELD")
MakeRouteEventLayer 示例 3(独立脚本)

以下 Python 脚本演示了如何在独立 Python 脚本中使用 MakeRouteEventLayer 函数。

# Name: MakeRouteEventLayer_Example3.py
# Description:  Make a LINE event layer. Routes and events are in a file geodatabase.
# An error field is added to the new layer. The new layer can be used by other 
# geoprocessing functions.
# Import system modules 
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data/pitt.gdb"
# Set local variables
rt = "roads/hwy"  # the 'hwy' feature class is in the 'roads' feature dataset
rid = "rkey" 
tbl = "pavecond"
props = "rkey LINE fmp tmp"
lyr = "pave_events" 
# Execute MakeRouteEventLayer
arcpy.MakeRouteEventLayer_lr(rt, rid, tbl, props, lyr, "#", "ERROR_FIELD")
MakeRouteEventLayer 示例 4(独立脚本)

以下 Python 脚本演示了如何在独立 Python 脚本中将 MakeRouteEventLayer 函数与企业级地理数据库数据结合使用。

# Name: MakeRouteEventLayer_Example4.py
# Description: Make a POINT event layer. Routes and events are in an enterprise geodatabase.
# The new layer can be used by other geoprocessing functions.
# Import system modules 
import arcpy
# Set workspace
arcpy.env.workspace = "C:/MyProject/myConn.sde"
# Set local variables
ds = arcpy.ValidateTableName("roads", wkspc)  # the 'roads' feature dataset
fc = arcpy.ValidateTableName("hwy", wkspc)  # the 'hwy' feature class 
rt = ds + "/" + fc  # the 'hwy' feature class is in the 'roads' feature dataset
rid = "rkey" 
tbl = "accident"
props = "rkey POINT mile"
lyr = "accident_events2" 
# Execute MakeRouteEventLayer
arcpy.MakeRouteEventLayer_lr(rt, rid, tbl, props, lyr)

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题