计数重叠要素 (分析)

摘要

根据输入要素生成已打断的重叠要素。 重叠要素的计数将写入输出要素。

插图

计数重叠要素插图

使用情况

  • 输出的几何类型与输入的几何类型相同,但点几何除外。 对于点几何,如果存在多个输入要素类,则输出将为多点要素类;如果存在单个输入点要素类,则输出将为点要素类。

  • 输出是输入的已打断并集。 将评估垂直偏移要素(具有各种 z 值的几何)之间的重叠,就好像将所有要素都展平为同一平面一样。

    对于面几何,被两个或两个以上要素占据的任何区域都将被视为重叠。 对于线几何,只有完全重叠的线(一条线段与另一条线段重合)才会被视为重叠。 相交于一点的线不会被视为重叠。 对于点几何,任何重合点均会被视为重叠。

  • 下列字段将被包含在输出要素类中:

    • COUNT_ - 输入中重叠要素的数量
    • COUNT_FC - 与要素重叠的单个要素类的数量

    输入要素中的所有其他字段都将被排除在输出要素类之外。

  • 当生成输出重叠表时,该表将针对每个重叠包含一个记录。 例如,当三个输入要素与同一位置重叠时,该表将包含有关该位置的三个记录,其中每个记录对应一个重叠几何。 输出重叠表中包括以下字段:

    • OVERLAP_OID - 相关输出要素类要素的 ObjectID。
    • ORIG_OID - 相关输入要素要素的 ObjectID。
    • ORIG_NAME - 如果存在多个输入,则将添加此字段。 该字段将包含输入的名称。

    该表使您可以将每个重叠关联回输入和输出要素。

参数

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

输入要素类或图层。 输入要素可以是点、多点、线或面。 如果提供了多个输入,则这些输入必须全部为相同的几何类型。

Feature Layer
输出要素类

包含重叠计数的输出要素类。

Feature Class
最小重叠计数
(可选)

将输出限制到仅达到或超过指定重叠数量的位置。 默认值为 1。

Long
输出重叠表
(可选)

包含每个重叠几何记录的输出表。

Table

arcpy.analysis.CountOverlappingFeatures(in_features, out_feature_class, {min_overlap_count}, {out_overlap_table})
名称说明数据类型
in_features
[in_features,...]

输入要素类或图层。 输入要素可以是点、多点、线或面。 如果提供了多个输入,则这些输入必须全部为相同的几何类型。

Feature Layer
out_feature_class

包含重叠计数的输出要素类。

Feature Class
min_overlap_count
(可选)

将输出限制到仅达到或超过指定重叠数量的位置。 默认值为 1。

Long
out_overlap_table
(可选)

包含每个重叠几何记录的输出表。

Table

代码示例

CountOverlappingFeatures 示例(Python 窗口)

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

import arcpy
arcpy.env.workspace = r"C:\data\data.gdb"
arcpy.analysis.CountOverlappingFeatures("Viewsheds", "Viewshed_Overlaps")
CountOverlappingFeatures 示例 2(独立脚本)

以下代码演示了如何使用 CountOverlappingFeatures 函数获取三个重叠的蜂窝服务提供商网络的重叠计数,并使用 min_overlap_count 参数将输出限制到仅全部三个蜂窝服务提供商均覆盖的区域。

# CountOverlappingFeatures_Example_2.py
# Description: Count number of cellular service providers for given area

# Import the system modules
import arcpy

# Set current workspace
arcpy.env.workspace = r"C:\data\data.gdb"

# Set input parameters
provider_a = 'Provider_A_ServiceArea'
provider_b = 'Provider_B_ServiceArea'
provider_c = 'Provider_C_ServiceArea'
in_fcs  = [provider_a, provider_b, provider_c]

# Set output feature names
out_fc = 'CellularProviders_Count'
out_tbl = 'CellularProviders_Count_Tbl'

# Obtain overlap count for three overlapping input feature classes
# and use minimum_overlap_count parameter to limit the output to only 
# those areas where all three overlap.
arcpy.analysis.CountOverlappingFeatures(in_fcs, out_fc, 3, out_tbl)

许可信息

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

相关主题