描述
用于添加逻辑示意图规则,以在基于现有模板构建逻辑示意图的过程中自动减少逻辑示意图交汇点。此工具根据其所连接的其他交汇点的数量,基于多个网络交汇点源类和对象表来减少交汇点。
警告:
该工具为配置和管理工具。
注:
该工具会基于输入逻辑示意图模板影响任何现有逻辑示意图的一致性。所有现有逻辑示意图都将变得不一致,并随附打开一致性警告图标 ,直至对其进行更新为止。
使用方法
系统在使用 utility network 服务时不支持此工具。您必须使用文件地理数据库中的 utility network or trace network 或企业级地理数据库中 utility network 的数据库连接。在使用企业级地理数据库时,必须以数据库 utility network 所有者的身份建立连接。
在企业级地理数据库中对公共设施网络执行此操作时,已连接的 ArcGIS Enterprise 门户帐户必须是门户公共设施网络所有者。
为输入网络参数指定的网络数据元素必须来自文件地理数据库中的 utility network or trace network 或企业级地理数据库中 utility network 的数据库连接。
“减少交汇点”规则用于在保留拓扑的同时简化逻辑示意图。
此工具允许将减少交汇点规则配置为根据相邻交汇点的数量,基于不同网络交汇点类和对象表来减少交汇点 - 即根据其所连接的交汇点数量,或根据相邻边上的特定属性。
您可以配置此工具以减少基于指定网络交汇点源类和对象表的所有逻辑示意图要素,或者减少基于指定网络交汇点源类和对象表的所有逻辑示意图要素。
当此工具配置有已设置为排除源类的规则过程(Python 中的 rule_process = "EXCLUDE_SOURCE_CLASSES"),并且未指定任何交汇点源类或对象表时,它适用于已处理逻辑示意图中的每个交汇点,无论其交汇点源类或对象表如何。例如,可配置这些设置以减少逻辑示意图中所有未连接的交汇点。
默认情况下,此工具配置有已设置为包括源类的规则过程(Python 中的 rule_process = "INCLUDE_SOURCE_CLASSES"),并期望处理一或多个网络交汇点源类或对象表。
如果 SystemJunctions 类存在于指定的交汇点源参数(Python 中的 junction_source)值之间,则该规则将系统地应用于系统交汇点和系统交汇点对象。
语法
AddReduceJunctionRule(in_utility_network, template_name, is_active, {inverse_source_selection}, {junction_source}, {connectivity_options}, {unconnected_junctions}, {one_connected_junction}, {two_connected_junctions}, {edges_attributes}, {description})
参数 | 说明 | 数据类型 |
in_utility_network | 包含要修改的逻辑示意图模板的公共设施网络或追踪网络。 | Utility Network; Trace Network |
template_name | 要修改的逻辑示意图模板的名称。 | String |
is_active | 指定在基于指定模板生成并更新逻辑示意图时,规则是否将处于启用状态。
| Boolean |
inverse_source_selection (可选) | 指定如何处理指定的交汇点源类和对象表。
| String |
junction_source [junction_source,...] (可选) | 网络交汇点源类和对象表的列表将根据规则过程而被排除或包括在内。 当规则过程被设置为包括源类(Python 中的 inverse_source_selection = "INCLUDE_SOURCE_CLASSES")时,默认情况下,将会处理一或多个网络交汇点源类或对象表。与属于此源类和对象表的网络交汇点相关的所有逻辑示意图交汇点均为减少的候选项。 注:添加减少交汇点规则工具将按照此列表中指定的顺序处理交汇点源类和对象表,从优先级最高的交汇点类或表(列表中的第一个类或表)到优先级最低的交汇点类或表(列表中的最后一个类或表)。 当规则过程设置为排除源类(Python 中的 inverse_source_selection = "EXCLUDE_SOURCE_CLASSES")时,无需指定特定的交汇点源类或对象表。在这种情况下,将减少生成的逻辑示意图中的所有交汇点,无论其源类或对象表如何。 注:在网络交汇点源类中指定 SystemJunctions 时,该规则将系统地处理系统交汇点和系统交汇点对象。 | Table; Feature Class |
connectivity_options (可选) | 指定将要减少的交汇点连接数。
| String |
unconnected_junctions (可选) | 指定是否将减少每个未连接的网络逻辑示意图交汇点候选项。仅当 connectivity_options = "MAX_2_CONNECTED_JUNCTIONS" 时此参数才可用。
| Boolean |
one_connected_junction (可选) | 指定是否将减少连接到单个交汇点的每个网络逻辑示意图交汇点减少候选项。仅当 connectivity_options = "MAX_2_CONNECTED_JUNCTIONS" 时此参数才可用。
| Boolean |
two_connected_junctions (可选) | 指定是否将减少连接到其他两个交汇点的每个网络逻辑示意图交汇点减少候选项。仅当 connectivity_options = "MAX_2_CONNECTED_JUNCTIONS" 时此参数才可用。
| Boolean |
edges_attributes [edges_attributes,...] (可选) | 邻近交汇点减少候选项的边属性的别名。 仅当每个指定属性别名的所有相邻边具有相同值时,交汇点才会减少。 | String |
description (可选) | 规则的描述。 | String |
派生输出
名称 | 说明 | 数据类型 |
out_utility_network | 已更新的 utility network or trace network。 | 公共设施网络;追踪网络 |
out_template_name | 逻辑示意图模板的名称。 | 字符串 |
代码示例
将减少交汇点规则添加到给定网络现有的 MyTemplate1 模板,以系统地减少任何未连接或连接到另外两个交汇点的电气系统交汇点和其他交汇点。
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate1"
input_JunctionClassToReduce1 = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.UN_112_SystemJunctions"
input_JunctionClassToReduce2 = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionJunction"
arcpy.AddReduceJunctionRule_nd(
input_Network, input_DiagramTemplate, "ACTIVE",
'INCLUDE_SOURCE_CLASSES',
input_JunctionClassToReduce1 + ";" + input_JunctionClassToReduce2,
"MAX_2_CONNECTED_JUNCTIONS", "REDUCE_UNCONNECTED_JCT", "KEEP_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS")
将减少交汇点规则添加到给定网络现有的 MyTemplate2 模板,以在下列条件下系统地减少任何其他交汇点:即当交汇点连接另外两个交汇点,并且其相邻边具有相同的 Asset type 和 Phases 属性值时。
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate2"
input_JunctionClassToReduce1 = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionJunction"
input_Alias1 = "Asset type"
input_Alias2 = "Phases"
arcpy.AddReduceJunctionRule_nd(
input_Network, input_DiagramTemplate, "ACTIVE",
'INCLUDE_SOURCE_CLASSES', input_JunctionClassToReduce1,
"MAX_2_CONNECTED_JUNCTIONS", "KEEP_UNCONNECTED_JCT", "KEEP_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS", input_Alias1 + ";" + input_Alias2)
环境
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是