沿线生成点 (数据管理)

摘要

用于沿线或面创建点要素。

使用情况

  • 可以按固定间隔为所有要素放置点,也可以按要素长度的百分比沿要素放置点。 还可以使用输入中的字段来放置点;该字段可以表示每个要素的固定间隔或者每个要素的特定距离。

    可以使用点放置参数来指定工具将用于放置输出点的方法。

  • 输入要素的属性将保留在输出要素类中。向输出要素类添加新字段 ORIG_FID,并设置为输入要素 ID。

  • 如果选中添加累积距离和序列字段参数,则将添加以下字段:

    • ORIG_LEN - 从线的起点到该点的沿线累积距离。 距离值相加,单位为输入要素值的空间参考单位。
    • ORIG_SEQ - 每个点的序列号,按从每条输入线创建的点的顺序排列。

参数

标注说明数据类型
输入要素

将用于放置点的线或面要素。

Feature Layer
输出要素类

将基于输入要素创建的点要素类。

Feature Class
点放置

指定将用于放置点的方法。

  • 按百分比将使用百分比参数值按百分比沿要素放置点。
  • 按距离将使用距离参数值将按固定距离沿要素放置点。 这是默认设置。
  • 按距离字段距离字段参数值的字段值将用于沿要素放置点。
String
距离
(可选)

点将放置于距离要素始点的间隔。

点放置参数设置为按距离时,此参数处于活动状态。

Linear Unit
百分比
(可选)

点将放置于距离要素始点的百分比。 例如,如果已使用 40%,则点将放置于要素距离的 40% 和 80% 位置。

点放置参数设置为按百分比时,此参数处于活动状态。

Double
包括端点
(可选)

指定是否在要素的开始点和结束点包括其他点。

  • 选中 - 将在要素的开始点和结束点包括其他点。
  • 未选中 - 不在要素的开始点和结束点包括其他点。 这是默认设置。
Boolean
添加累积距离和序列字段
(可选)

指定是否将累积距离和序列字段添加到输出中。

  • 选中 - 将累积距离 (ORIG_LEN) 和序列字段 (ORIG_SEQ) 添加到输出中。 距离值相加,单位为输入要素值的空间参考单位。
  • 未选中 - 不会将累积距离和序列字段添加到输出中。 这是默认设置。
Boolean
距离字段
(可选)

将用于放置输出点的输入要素中的字段。

如果该字段为数值类型,则字段值将用于以该间隔放置点。

如果该字段为字符串类型,则字段值必须组织为以分号分隔的距离字符串。 将在这些距离处放置点。

将忽略零值或负值的字段值。 将忽略超出要素长度的该要素的字段值。

距离将采用输入空间参考的线性单位。

点放置参数设置为按距离字段时,此参数处于活动状态。

Field
距离法
(可选)

指定将用于创建点的测量方法。

点放置参数设置为按距离时,此参数处于活动状态。

  • 平面将使用平面方法创建点。 平面测量将使用 2D 笛卡尔算法。 这是默认设置。
  • 测地线将使用测地线方法创建点。 测地线测量将计算地球表面上两点之间的距离。 当输入具有地理坐标系时,此为默认设置。
String

arcpy.management.GeneratePointsAlongLines(Input_Features, Output_Feature_Class, Point_Placement, {Distance}, {Percentage}, {Include_End_Points}, {Add_Chainage_Fields}, {Distance_Field}, {Distance_Method})
名称说明数据类型
Input_Features

将用于放置点的线或面要素。

Feature Layer
Output_Feature_Class

将基于输入要素创建的点要素类。

Feature Class
Point_Placement

指定将用于放置点的方法。

  • PERCENTAGE将使用 Percentage 参数值按百分比沿要素放置点。
  • DISTANCE将使用 Distance 参数值将按固定距离沿要素放置点。 这是默认设置。
  • DISTANCE_FIELDDistance_Field 参数值的字段值将用于放置点。
String
Distance
(可选)

点将放置于距离要素始点的间隔。

Point_Placement 参数设置为 DISTANCE 时,此参数处于活动状态。

Linear Unit
Percentage
(可选)

点将放置于距离要素始点的百分比。 例如,如果已使用 40%,则点将放置于要素距离的 40% 和 80% 位置。

Point_Placement 参数设置为 PERCENTAGE 时,此参数处于活动状态。

Double
Include_End_Points
(可选)

指定是否在要素的开始点和结束点包括其他点。

  • END_POINTS将在要素的开始点和结束点包括其他点。
  • NO_END_POINTS不在要素的开始点和结束点包括其他点。 这是默认设置。
Boolean
Add_Chainage_Fields
(可选)

指定是否将累积距离和序列字段添加到输出中。

  • ADD_CHAINAGE将累积距离 (ORIG_LEN) 和序列字段 (ORIG_SEQ) 添加到输出中。 距离值相加,单位为 Input_Features 值的空间参考单位。
  • NO_CHAINAGE不会将累积距离和序列字段添加到输出中。 这是默认设置。
Boolean
Distance_Field
(可选)

将用于放置输出点的输入要素中的字段。

如果该字段为数值类型,则字段值将用于以该间隔放置点。

如果该字段为字符串类型,则字段值必须组织为以分号分隔的距离字符串。 将在这些距离处放置点。

将忽略零值或负值的字段值。 将忽略超出要素长度的该要素的字段值。

距离将采用输入空间参考的线性单位。

Point_Placement 参数设置为 DISTANCE_FIELD 时,此参数处于活动状态。

Field
Distance_Method
(可选)

指定将用于创建点的测量方法。

Point_Placement 参数设置为 DISTANCE 时,此参数处于活动状态。

  • PLANAR将使用平面方法创建点。 平面测量将使用 2D 笛卡尔算法。 这是默认设置。
  • GEODESIC将使用测地线方法创建点。 测地线测量将计算地球表面上两点之间的距离。 当输入具有地理坐标系时,此为默认设置。
String

代码示例

GeneratePointsAlongLines 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 GeneratePointsAlongLines 函数。

import arcpy
arcpy.env.workspace = 'C:/data/base.gdb'
arcpy.management.GeneratePointsAlongLines('rivers', 'distance_intervals', 'DISTANCE', Distance='500 meters')
arcpy.management.GeneratePointsAlongLines('rivers', 'percentage_intervals', 'PERCENTAGE', Percentage=10)
arcpy.management.GeneratePointsAlongLines('rivers', 'distance_by_field', 'DISTANCE_FIELD', Distance_Field='distance')
GeneratePointsAlongLines 示例 2(独立脚本)

以下独立脚本演示了如何使用 GeneratePointsAlongLines 函数。

# Description: Convert point features to line features

import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data/base.gdb'

# Set local variables
in_features = 'rivers'
out_fc_1 = 'distance_intervals'
out_fc_2 = 'percentage_intervals'

# Run GeneratePointsAlongLines by distance
arcpy.management.GeneratePointsAlongLines(in_features, out_fc_1, 'DISTANCE',
                                          Distance='500 meters')

# Run GeneratePointsAlongLines by percentage
arcpy.management.GeneratePointsAlongLines(in_features, out_fc_2, 'PERCENTAGE',
                                          Percentage=10,
                                          Include_End_Points='END_POINTS')

# Run GeneratePointsAlongLines by distance field
arcpy.management.GeneratePointsAlongLines(in_features, out_fc_2, 'DISTANCE_FIELD',
                                          Distance_Field='distance')

许可信息

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

相关主题