图形缓冲 (分析)

描述

在输入要素周围某一指定距离内创建缓冲区多边形。在要素周围生成缓冲区时,多种制图形状对缓冲区末端(端头)和拐角(连接)可用。

备用工具可用于缓冲操作。有关详细信息,请参阅成对缓冲缓冲区工具文档。

插图

“成对缓冲”图示

使用方法

    注:

    此工具的输出仅适用于制图显示。不适用于执行进一步分析。这样使用它会导致结果错误。

  • 输入要素可以是点、线或面。缓冲区输出末端(端头)和拐角(连接)的选项是否可用取决于输入要素的类型。

    • 端头类型 - 仅点和线
    • 连接类型 - 仅面和线
  • 输出要素类将包含一个 BUFF_DIST 字段,该字段包含用于缓冲各要素的缓冲距离(使用输入要素坐标系的线性单位)。

    如果输入中存在名为 BUFF_DIST 的字段,那么在输出中将覆盖该字段的值。

  • 输出缓冲区要素始终为欧氏。不支持测地线缓冲区要素。有关欧氏缓冲区和测地线缓冲区之间的差异的信息,请参阅缓冲区(分析)的工作原理

  • 输出要素类将包含一个 ORIG_FID 字段,该字段包含为其创建缓冲区的输入要素的要素 ID。如果输入中存在名为 ORIG_FID 的字段,那么在输出中将覆盖该字段的值。

  • 如果对面要素进行缓冲,则可使用负缓冲距离在面要素内部创建缓冲区。使用负缓冲距离将会使面边界向内缩减指定的距离。

    警告:

    如果负缓冲距离足够大,使得面缩减至不存在,则将生成空几何。此时将出现一条警告消息,并且不会将任何空几何要素写入输出要素类。

  • 如果使用输入中的字段来获取缓冲距离,则该字段的值可以是数字(例如,5),也可以是数字加上有效的线性单位(例如,5 千米)。如果字段值为数字,则假定距离使用输入空间参考的线性单位(除非该输入使用地理坐标系,这时该值以米为单位)。如果在字段值中指定的线性单位无效或无法识别,则默认情况下将使用输入空间参考的线性单位。

    对缓冲距离使用缓冲字段
  • 此工具支持并行处理因子环境。如果环境未设置(默认情况下)或设置为 100,则将启用完全并行处理,同时该工具尝试将工作分配给计算机上的所有逻辑内核。将环境设置为 0 将禁用并行处理。在 1 到 99 之间指定一个因子时,工具将通过应用公式(并行处理因子 / 100 * 逻辑内核数)确定要使用的逻辑内核的百分比,其结果将向上舍入到最近的整数值。如果此公式的结果是 0 或 1,则将不启用并行处理。

语法

arcpy.analysis.GraphicBuffer(in_features, out_feature_class, buffer_distance_or_field, {line_caps}, {line_joins}, {miter_limit}, {max_deviation})
参数说明数据类型
in_features

要进行缓冲的输入点、线或面要素。

Feature Layer
out_feature_class

包含输出缓冲区的要素类。

Feature Class
buffer_distance_or_field

与要缓冲的输入要素之间的距离。该距离可以用表示线性距离的某个值来指定,也可以用输入要素中的某个字段(包含用来对每个要素进行缓冲的距离)来指定。

如果未指定线性单位或输入了“未知”,则将使用输入要素空间参考的线性单位。

指定距离时,如果所需线性单位含有两个单词,如 Decimal Degrees,请将两个单词合并成一个词(例如,20 DecimalDegrees)。

Linear Unit; Field
line_caps
(可选)

指定将要进行缓冲的输入要素的端头(末端)类型。该参数仅支持点和面要素。

  • SQUARE输入段末端周围的输出缓冲区将具有方形端头。这是默认设置。
  • BUTT输出缓冲区的端头将垂直于输入段末端。
  • ROUND输入段末端的输出缓冲区将具有圆形端头。
String
line_joins
(可选)

两条线段连接拐角处的缓冲区的形状。该参数仅支持线和面要素。

  • MITER在拐角周围生成方形或尖角形状的输出缓冲区要素。例如,方形输入面要素具有方形缓冲区要素。这是默认设置。
  • BEVEL内拐角的输出缓冲区要素将为方形,而垂直于拐角最远点的外拐角将被切掉。
  • ROUND内拐角的输出缓冲区要素为方形,而外拐角则为圆形。
String
miter_limit
(可选)

当线段相交呈锐角且指定了 MITERline_joins 时,可使用该参数来控制缓冲输出的锐角如何逐渐变为点。某些情况下,当使用MITERline_joins时,两条线连接形成的外角会非常大。这可能会导致拐角点的延伸超出预期。

Double
max_deviation
(可选)

输出缓冲区面边界将从实际理想缓冲区边界偏移的最大距离。实际缓冲区边界为曲线,输出面边界为增密折线。可以使用此参数来控制面边界与实际缓冲区边界的近似程度。

如果此参数未设置或设置为 0,则工具将确定最大偏差。建议您使用默认值。造成工具或后续分析性能下降的原因可能为使用的最大偏移偏差值过小。

有关更多详细信息,请参阅增密工具文档中的 max_deviation 参数信息。

Linear Unit

代码示例

GraphicBuffer 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用 GraphicBuffer 工具。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.GraphicBuffer_analysis("roads", "C:/output/majorrdsBuffered", "100 Feet", 
                             "SQUARE", "MITER")

许可信息

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

相关主题