ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

沿路径定位要素

  • 描述
  • 使用方法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

描述

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

使用方法

  • 输出表可以是 dBASE 文件或地理数据库表。

  • 输入要素是点时事件类型必须是 POINT,而在输入要素是线或面时必须是 LINE。

  • 在输入要素与目标路径精确重叠时可取得最佳结果。

    警告:

    如果使用较大的搜索半径或拓扑容差克服输入要素与目标路径之间的偏差,则可能产生意想不到的结果。

  • 要减少此工具处理的输入要素的数量,可以输入能够执行选择操作的图层。有关详细信息,请参阅使用图层和表视图。

  • 使用创建路径事件图层工具或使用 ArcMap 中的“显示路径事件”命令可在 ArcMap 中显示输出表。

语法

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

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

  • 路径标识符字段 - 包含指明每个事件所在路径的值的字段。
  • 事件类型 - 输出事件表包含的事件类型(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_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")
LocateFeaturesAlongRoutes 示例 5(独立脚本)

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

# Name: LocateFeaturesAlongRoutes_Example5.py
# Description:  Locate personal geodatabase points along personal geodatabase routes.
# Import system modules
import arcpy
# Set workspace
arcpy.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)

环境

  • 当前工作空间
  • 输出配置关键字
  • 范围
  • 临时工作空间

许可信息

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

相关主题

  • 线性参考工具箱概述
  • 沿路径定位要素

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明