描述
添加逻辑示意图规则,根据逻辑示意图中当前显示的网络要素的位置,自动将新的网络要素追加到逻辑示意图中。
警告:
该工具为配置和管理工具。
注:
该工具会基于输入逻辑示意图模板影响任何现有逻辑示意图的一致性。所有现有逻辑示意图都将变得不一致,并随附打开一致性警告图标 ,直至对其进行更新为止。
使用方法
系统在使用公共设施网络或追踪网络服务时不支持此工具。您必须使用文件地理数据库中的公共设施网络或追踪网络,或者企业级地理数据库中公共设施网络或追踪网络的数据库连接。使用企业级地理数据库时,需要满足以下要求:
- 输入网络参数值必须来自作为数据库公共设施网络所有者或数据库追踪网络所有者建立的数据库连接。
- 连接的 ArcGIS Enterprise 门户帐户必须为门户公共设施网络所有者或门户追踪网络所有者。
- 该工具必须连接到预期为公开且不受保护的默认版本。
“空间查询”规则用于根据其相对于当前逻辑示意图中存在的网络要素的位置来检测新的网络要素,并将新检测到的要素附加到网络逻辑示意图。
规则处理的网络要素基于相同的要素类,并且可以使用 SQL 查询表达式过滤这些要素。
追加的网络要素基于相同的要素类;可以使用 SQL 查询表达式过滤这些要素。
语法
arcpy.nd.AddSpatialQueryRule(in_utility_network, template_name, is_active, added_features, {overlap_type}, existing_features, {search_distance}, {added_where_clause}, {existing_where_clause}, {description})
参数 | 说明 | 数据类型 |
in_utility_network | 包含要修改的逻辑示意图模板的公共设施网络或追踪网络。 | Utility Network; Trace Network |
template_name | 要修改的逻辑示意图模板的名称。 | String |
is_active | 指定在基于指定模板生成并更新逻辑示意图时,规则是否将处于启用状态。
| Boolean |
added_features | 将向其添加要素的源要素类。 | Feature Class |
overlap_type (可选) | 要评估的空间关系。
| String |
existing_features | 将对其执行空间查询的源要素类。 | Feature Class |
search_distance (可选) | existing_features 参数中的要素与 added_features 参数中的要素之间的距离。仅当 overlap_type 参数设置为以下选项时,该参数才有效:INTERSECT、WITHIN_A_DISTANCE、CONTAINS 或 WITHIN。 | Linear Unit |
added_where_clause (可选) | 用于过滤要添加到逻辑示意图中的要素的 SQL 查询。如果没有 SQL 查询,基于指定源类的与指定现有要素在空间上相关的要素将追加到逻辑示意图中。 | SQL Expression |
existing_where_clause (可选) | 用于过滤逻辑示意图中现有要素的 SQL 查询。如果没有 SQL 查询,将考虑基于逻辑示意图中存在的指定源类的要素。 | SQL Expression |
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_DistributionLine = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionLine"
input_StructureBoundary = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricStructureBoundary"
input_DiagramTemplate = "MyTemplate1"
arcpy.AddSpatialQueryRule_nd(input_Network, input_DiagramTemplate,
'ACTIVE', input_DistributionLine, 'INTERSECT',
input_StructureBoundary, None, 'ASSETGROUP=6',
'ASSETGROUP=3')
环境
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是