描述
用于添加逻辑示意图规则,以在基于现有模板构建逻辑示意图的过程中自动减少逻辑示意图交汇点。根据所连接的其他交汇点的数量,按属性从给定网络交汇点源类或对象表对待减少交汇点进行查询。
警告:
该工具为配置和管理工具。
注:
该工具会基于输入逻辑示意图模板影响任何现有逻辑示意图的一致性。所有现有逻辑示意图都将变得不一致,并随附打开一致性警告图标 ,直至对其进行更新为止。
使用方法
系统在使用公共设施网络或追踪网络服务时不支持此工具。您必须使用文件地理数据库中的公共设施网络或追踪网络,或者企业级地理数据库中公共设施网络或追踪网络的数据库连接。使用企业级地理数据库时,需要满足以下要求:
- 输入网络参数值必须来自作为数据库公共设施网络所有者或数据库追踪网络所有者建立的数据库连接。
- 连接的 ArcGIS Enterprise 门户帐户必须为门户公共设施网络所有者或门户追踪网络所有者。
- 该工具必须连接到预期为公开且不受保护的默认版本。
“减少交汇点”规则用于在保留拓扑的同时简化逻辑示意图。
此工具可将减少交汇点规则配置为按属性运行。此工具可根据交汇点所连接的交汇点数量,或根据其相邻边上的特定属性,通过过滤属性要减少的交汇点来配置给定网络交汇点类或对象表中交汇点的减少。
语法
arcpy.nd.AddReduceJunctionByAttributeRule(in_utility_network, template_name, is_active, junction_source, {where_clause}, {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 |
junction_source | 要处理的网络交汇点源类或对象表。与属于此源类或对象表的网络交汇点相关的所有逻辑示意图交汇点均为减少的候选项。 | Table; Feature Class |
where_clause (可选) | SQL 表达式,用于从基于输入模板的逻辑示意图内的候选减少的交汇点中选择网络交汇点的子集。有关 SQL 语法的详细信息,请参阅帮助主题在 ArcGIS 中使用的查询表达式的 SQL 参考。 | SQL Expression |
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_JunctionClassToReduce = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionDevice"
arcpy.AddReduceJunctionByAttributeRule_un(input_Network, input_DiagramTemplate,
"ACTIVE", input_JunctionClassToReduce,
"ASSETTYPE <> 11 And ASSETTYPE <> 8",
"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_JunctionClassToReduce = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionDevice"
input_Alias1 = "Asset type"
input_Alias2 = "Phases"
arcpy.AddReduceJunctionByAttributeRule_nd(input_Network, input_DiagramTemplate,
"ACTIVE", input_JunctionClassToReduce,
"ASSETTYPE <> 11 And ASSETTYPE <> 8",
"MAX_2_CONNECTED_JUNCTIONS",
"KEEP_UNCONNECTED_JCT", "KEEP_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS",
input_Alias1 + ";" + input_Alias2)
环境
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是