添加折叠容器规则 (网络逻辑示意图)

摘要

用于添加逻辑示意图规则,以在基于现有模板构建逻辑示意图的过程中自动折叠容器内容。 该规则可以折叠逻辑示意图中容器的全部内容。

了解有关折叠网络逻辑示意图中容器的详细信息

警告:

该工具为配置和管理工具。

注:

该工具会基于输入逻辑示意图模板影响任何现有逻辑示意图的一致性。 所有现有逻辑示意图都将变得不一致,并随附打开一致性警告图标 要更新的逻辑示意图,直至对其进行更新为止。

使用情况

  • 系统在使用公共设施网络或追踪网络服务时不支持此工具。 您必须使用文件或移动地理数据库中的公共设施网络或追踪网络,或者企业级地理数据库中公共设施网络或追踪网络的数据库连接。 使用企业级地理数据库时,需要满足以下要求:

  • 折叠容器规则可用于简化逻辑示意图,方法是折叠逻辑示意图中可能存在的所有与容器相关的内容。

    此工具可用于配置“折叠容器”规则,以便基于指定容器源类或对象表折叠逻辑示意图中的所有容器内容,或者折叠除基于指定容器源类或对象表之外的逻辑示意图中的所有容器内容。

    如果对其进行默认配置(即使用规则流程参数中的排除源类选项和容器类型参数中的交汇点和边选项,并且未指定源容器类或对象表),则折叠容器规则将在生成的逻辑示意图中折叠所有内容,而不考虑与其相关的网络源容器类。

参数

标注说明数据类型
输入网络

包含要修改的逻辑示意图模板的公共设施网络或追踪网络。

Utility Network; Trace Network
输入逻辑示意图模板

要修改的逻辑示意图模板名称

String
激活

指定在基于指定模板生成并更新逻辑示意图时,规则是否将处于激活状态。

  • 选中 - 在基于输入模板生成并更新逻辑示意图的过程中,添加的规则将会变为激活状态。 这是默认设置。
  • 未选中 - 在基于输入模板生成或更新逻辑示意图的过程中,添加的规则将不会变为激活状态。

Boolean
容器类型

指定规则将进行处理的容器源类或对象表的几何类型。

  • 仅交汇点折叠容器规则将仅处理交汇点容器源类和对象表。 仅会处理面容器源类、点容器源类和容器交汇点对象表。
  • 仅边折叠容器规则将仅处理边容器源类和对象表。 仅会处理线性容器源类或容器边对象表。
  • 交汇点和边折叠容器规则将处理任何容器源类和对象表,无论它们的类型如何。 交汇点和边类型均被处理。 这是默认设置。
String
规则流程

指定处理指定容器源类和对象表的方式。

  • 排除源类将不会折叠所有基于指定源类和对象表的容器,但将折叠其他容器。 这是默认设置。
  • 包括源类将折叠所有基于指定源类和对象表的容器。
String
容器源
(可选)

“折叠容器”规则流程中,将排除或包括的容器源类和对象表。

如果将规则流程设置为排除源类(Python 中的 inverse_source_selection = "EXCLUDE_SOURCE_CLASSES"),可以对规则进行配置,无需指定网络源类或对象表;在这种情况下,其将在生成的逻辑示意图中折叠任何容器源类和对象表的内容。 但是,如果将规则流程设置为包括源类(Python 中的 inverse_source_selection = "INCLUDE_SOURCE_CLASSES"),必须指定容器源类或要折叠的对象表。

如果将规则流程设置为排除源类(Python 中的 inverse_source_selection = "EXCLUDE_SOURCE_CLASSES"),与属于指定类或对象表的任何容器要素或容器对象相关的内容将不会在生成的逻辑示意图中折叠,而与不属于那些类和对象的容器要素和容器对象相关的内容表将被折叠。 相反,当将规则流程设置为包括源类(Python 中的 inverse_source_selection = "INCLUDE_SOURCE_CLASSES")时,与属于指定源类和对象表的任何容器要素或容器对象相关的内容将不会在生成的逻辑示意图中折叠,而与不属于那些源类和对象的容器要素和容器对象相关的内容表将不会被折叠。

Table; Feature Class
描述
(可选)

规则的描述。

String
聚合重新连接的边
(可选)

用于指定规则是否将聚合重新连接到已折叠容器交汇点的边。

  • 未选中 - 任何连接内容交汇点的边都将被保留,并重新连接到已折叠容器交汇点。
  • 选中 - 任何连接内容交汇点的边都将替换为重新连接到已折叠容器交汇点的缩减边。 此外,将在相同缩减边下系统地对两个已折叠交汇点之间的多条边进行聚合。 这是默认设置。

Boolean

派生输出

标注说明数据类型
输出网络

已更新的公共设施网络或追踪网络。

Utility Network; Trace Network
输出逻辑示意图模板

逻辑示意图模板的名称。

String

arcpy.nd.AddCollapseContainerRule(in_utility_network, template_name, is_active, container_type, inverse_source_selection, {container_sources}, {description}, {reconnected_edges_option})
名称说明数据类型
in_utility_network

包含要修改的逻辑示意图模板的公共设施网络或追踪网络。

Utility Network; Trace Network
template_name

要修改的逻辑示意图模板名称

String
is_active

指定在基于指定模板生成并更新逻辑示意图时,规则是否将处于启用状态。

  • ACTIVE在基于输入模板生成并更新逻辑示意图的过程中,添加的规则将会变为启用状态。 这是默认设置。
  • INACTIVE在基于输入模板生成或更新逻辑示意图的过程中,添加的规则将不会变为启用状态。
Boolean
container_type

指定规则将进行处理的容器源类或对象表的几何类型。

  • JUNCTIONS折叠容器规则将仅处理交汇点容器源类和对象表。 仅会处理面容器源类、点容器源类和容器交汇点对象表。
  • EDGES折叠容器规则将仅处理边容器源类和对象表。 仅会处理线性容器源类或容器边对象表。
  • BOTH折叠容器规则将处理任何容器源类和对象表,无论它们的类型如何。 交汇点和边类型均被处理。 这是默认设置。
String
inverse_source_selection

指定处理指定容器源类和对象表的方式。

  • EXCLUDE_SOURCE_CLASSES将不会折叠所有基于指定源类和对象表的容器,但将折叠其他容器。 这是默认设置。
  • INCLUDE_SOURCE_CLASSES将折叠所有基于指定源类和对象表的容器。
String
container_sources
[container_sources,...]
(可选)

“折叠容器”规则流程中,将排除或包括的容器源类和对象表。

如果将规则流程设置为排除源类(Python 中的 inverse_source_selection = "EXCLUDE_SOURCE_CLASSES"),可以对规则进行配置,无需指定网络源类或对象表;在这种情况下,其将在生成的逻辑示意图中折叠任何容器源类和对象表的内容。 但是,如果将规则流程设置为包括源类(Python 中的 inverse_source_selection = "INCLUDE_SOURCE_CLASSES"),必须指定容器源类或要折叠的对象表。

如果将规则流程设置为排除源类(Python 中的 inverse_source_selection = "EXCLUDE_SOURCE_CLASSES"),与属于指定类或对象表的任何容器要素或容器对象相关的内容将不会在生成的逻辑示意图中折叠,而与不属于那些类和对象的容器要素和容器对象相关的内容表将被折叠。 相反,当将规则流程设置为包括源类(Python 中的 inverse_source_selection = "INCLUDE_SOURCE_CLASSES")时,与属于指定源类和对象表的任何容器要素或容器对象相关的内容将不会在生成的逻辑示意图中折叠,而与不属于那些源类和对象的容器要素和容器对象相关的内容表将不会被折叠。

Table; Feature Class
description
(可选)

规则的描述。

String
reconnected_edges_option
(可选)

用于指定规则是否将聚合重新连接到已折叠交汇点的边。

  • DONT_AGGREGATE_RECONNECTED_EDGES任何连接内容交汇点的边都将被保留,并重新连接到已折叠容器交汇点。
  • AGGREGATE_RECONNECTED_EDGES任何连接内容交汇点的边都将替换为重新连接到已折叠容器交汇点的缩减边。 此外,将在相同缩减边下系统地对两个已折叠交汇点之间的多条边进行聚合。 这是默认设置。
Boolean

派生输出

名称说明数据类型
out_utility_network

已更新的公共设施网络或追踪网络。

Utility Network; Trace Network
out_template_name

逻辑示意图模板的名称。

String

代码示例

AddCollapseContainerRule 示例(独立脚本)

使用 AddCollapseContainerRule 函数将折叠容器规则添加到 MyTemplate1 模板可以在生成的逻辑示意图中折叠所有容器,而不考虑其源类和对象表,属于结构交汇点源类的容器除外。

import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate1"
input_DoNotCollapseSourceClass = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.StructureJunction"

arcpy.nd.AddCollapseContainerRule(input_Network, input_DiagramTemplate, 
                                  'ACTIVE', 'BOTH', 'EXCLUDE_SOURCE_CLASSES', 
                                  input_DoNotCollapseSourceClass, None,
                                  'AGGREGATE_RECONNECTED_EDGES')

环境

此工具不使用任何地理处理环境。

许可信息

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

相关主题