要素转面 (数据管理)

在 Advanced 许可等级下可用。

摘要

创建包含从输入线或面要素所封闭的区域生成的面的要素类。

插图

要素转面工具图示
显示了“要素转面”工具示例以进行比较。

使用情况

  • 将在一个或多个输入要素形成的封闭区域处,构造一个新的面要素并将其写入输出要素类。 输出属性将因保留属性参数值(Python 中的 attributes)和标注要素参数值(Python 中的 label_features)而异。

  • 在输入要素列表中指定了多个要素类或图层时,列表中这些条目的顺序并不影响输出要素类型,但是在处理过程中将使用工具对话框内此列表最顶部的条目(Python 中的第一个条目)的空间参考,并将其作为输出空间参考。

  • 输入要素中的参数(真)曲线在输出面中将保持为真曲线,即使这些曲线被分割开了。 但这一点不适用于 shapefile 数据。

  • 注:

    建议您不要使用“保留属性”参数(Python 中的 attributes),因为其已不再受支持并且不起作用。 但是为了脚本或模型的向后兼容性,仍会保留此参数。 虽然下面介绍可能生成的某些输入组合的输出属性模式和字段值,但是其中大部分都是不需要的。

    如果选中保留属性参数(Python 中的 attributes = "ATTRIBUTES"),那么输出属性模式和字段值将取决于标注要素(点)是否由以下方法提供:

    • 如果未提供标注要素参数值,每个输入条目的属性模式(字段名和属性,不含字段值)在输出中将保持输入列表中的顺序。 一个新字段 FID_xxx(其中 xxx 是特定输入条目的源要素类名称)将会添加到每个输入条目的输出中,并将值设置为 -1。 所有其他字段将包括零或空值。
    • 如果提供标注要素参数值,则所有输入属性模式在输出要素类中都不会被保留,输出要素类中只包含标注要素的属性。 如果一个输出面包含一个标注要素,那么它将从标注要素获得字段值。 如果一个输出面包含多个标注要素,它将从其中一个标注要素获得字段值。如果输出面不包含标注要素,其字段值为零或空。
  • 如果未选中保留属性参数(Python 中的 attributes = "NO_ATTRIBUTES"),则输入属性模式被写入到输出中,但属性值为空。 如果不需要输出面要素类的属性,则会为标注要素参数提供不具有任何属性的点要素类。

  • 在输入面要素分为较小的输出面要素的位置,可使用标识工具从输入面要素到结果面要素传递属性。

  • 此工具通过切片的方式处理庞大的数据集以便提高性能和可扩展性。有关详细信息,请参阅对大型数据集进行地理处理

参数

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

输入要素可以是线或面,或是两者兼而有之。

Feature Layer
输出要素类

输出面要素类。

Feature Class
XY 容差
(可选)

进行空间计算时所有要素坐标之间的最小距离以及坐标可以沿 X 和/或 Y 方向移动的距离。默认 XY 容差设定值为 0.001 米,或者为其等效值(以要素单位表示)。

警告:

更改此参数的值可能会导致出现故障或意外结果。建议不要修改此参数。已将其从工具对话框的视图中移除。默认情况下,将使用输入要素类的空间参考 x,y 容差属性。

Linear Unit
保留属性
(可选)

旧版本:

现在,已不再支持此参数。

Boolean
标注要素
(可选)

保存包含要传递到输出面要素的属性的可选输入点要素。

Feature Layer

arcpy.management.FeatureToPolygon(in_features, out_feature_class, {cluster_tolerance}, {attributes}, {label_features})
名称说明数据类型
in_features
[in_features,...]

输入要素可以是线或面,或是两者兼而有之。

Feature Layer
out_feature_class

输出面要素类。

Feature Class
cluster_tolerance
(可选)

进行空间计算时所有要素坐标之间的最小距离以及坐标可以沿 X 和/或 Y 方向移动的距离。默认 XY 容差设定值为 0.001 米,或者为其等效值(以要素单位表示)。

警告:

更改此参数的值可能会导致出现故障或意外结果。建议不要修改此参数。已将其从工具对话框的视图中移除。默认情况下,将使用输入要素类的空间参考 x,y 容差属性。

Linear Unit
attributes
(可选)

旧版本:

现在,已不再支持此参数。

Boolean
label_features
(可选)

保存包含要传递到输出面要素的属性的可选输入点要素。

Feature Layer

代码示例

FeatureToPolygon 示例 1(Python 窗口)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.FeatureToPolygon_management(["mainroads.shp","streets.shp"],
                                  "c:/output/output.gdb/streetblocks",
                                  "", "NO_ATTRIBUTES")
FeatureToPolygon 示例 2(独立脚本)

以下独立脚本是演示如何在脚本环境中应用 FeatureToPolygon 函数的简单示例。

# Name: FeatureToPolygon_Example2.py
# Description: Use FeatureToPolygon function to construct habitat areas
#              from park boundaries and rivers.

# Import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/parks_analysis.gdb"

# Set local parameters
inFeatures = ["park_boundaries", "rivers"]
outFeatureClass = "c:/output/output.gdb/habitat_areas"
clusTol = "0.05 Meters"

# Use the FeatureToPolygon function to form new areas
arcpy.FeatureToPolygon_management(inFeatures, outFeatureClass, clusTol,
                                  "NO_ATTRIBUTES")

许可信息

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

相关主题