联合 (分析)
插图
用法
-
所有输入要素类和要素图层都必须是面几何。
-
允许间距参数可用于连接属性参数的 ALL 或 ONLY_FID 的设置。这样将可以标识出被生成面完全包围的生成区域。这些 GAP 要素的 FID 属性将为 -1。
-
输入要素类的属性值将被复制到输出要素类。但是,如果输入图层是通过创建要素图层工具创建的并且选中了字段的“使用比率策略”选项,则将计算输出属性值与输入属性值的比率。如果启用了“使用比率策略”选项,分割叠加操作中的要素时,将按输入要素属性值的一定比例生成要素的属性值。输出值将根据输入要素几何被分割的比率得出。例如,如果输入几何被分割成相等的两部分,则每个新要素的属性值都等于输入要素属性值的一半。“使用比率策略”仅适用于数值字段类型。
警告:地理处理工具不支持地理数据库要素类或表字段分割策略。
-
此工具通过切片的方式处理庞大的数据集以便提高性能和可扩展性。有关详细信息,请参阅对大型数据集进行地理处理。
-
即使所有输入要素均属于单部分要素,此工具仍能在输出中生成多部分 (multipart) 要素。如果不希望生成多部分要素,可对输出要素类使用多部分 (Multipart) 至单部分 (Singlepart) 工具。
对于 ArcView 和 Editor 级别的许可,输入要素类或图层的数量被限定为 2 个。
语法
参数 | 说明 | 数据类型 |
in_features [[in_features, {Rank}],...] |
输入要素类或图层列表。要素间距小于拓扑容差时,等级较低的要素将捕捉到等级较高的要素。最高等级为一。所有输入要素都必须是面。 | Value Table |
out_feature_class |
将包含结果的要素类。 | Feature Class |
join_attributes (可选) |
确定输入要素的哪些属性将传递到输出要素类。
| String |
cluster_tolerance (可选) |
所有要素坐标(结点和折点)之间的最小距离以及坐标可以沿 X 和/或 Y 方向移动的距离。 | Linear unit |
gaps (可选) |
间距是输出要素类中被其他面完全包围的区域。它并非无效,但最好对其进行识别以供分析之用。要在输出中找出间距,请将此选项设置为 NO_GAPS,这样便会在此类区域中创建要素。要选择此类要素,可通过判定输入要素的所有 FID 值是否均等于 -1 来查询输出要素类。
| Boolean |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 Union 函数。
import arcpy from arcpy import env env.workspace = "C:/data/data/gdb" arcpy.Union_analysis (["well_buff50", "stream_buff200", "waterbody_buff500"], "water_buffers", "NO_FID", 0.0003) arcpy.Union_analysis ([["counties", 2],["parcels", 1],["state", 2]], "state_landinfo")
以下独立脚本演示了在脚本中应用 Union 函数的两种方式。
# unions.py # Purpose: union 3 feature classes # Author: ESRI # Import the system modules import arcpy from arcpy import env # Set the current workspace # (to avoid having to specify the full path to the feature classes each time) env.workspace = "c:/data/data.gdb" # Union 3 feature classes but only carry the FID attributes to the output inFeatures = ["well_buff50", "stream_buff200", "waterbody_buff500"] outFeatures = "water_buffers" clusterTol = 0.0003 arcpy.Union_analysis (inFeatures, outFeatures, "ONLY_FID", clusterTol) # Union 3 other feature classes, but specify some ranks for each # since parcels has better spatial accuracy inFeatures = [["counties", 2],["parcels", 1],["state", 2]] outFeatures = "state_landinfo" arcpy.Union_analysis (inFeatures, outFeatures)