添加追踪规则 (网络逻辑示意图)

描述

添加逻辑示意图规则,以在基于现有模板构建逻辑示意图的过程中于公共设施网络或追踪网络上自动执行追踪。由此产生的追踪网络要素和网络对象将用于构建逻辑示意图的内容。

了解有关使用“追踪”规则构建逻辑示意图的详细信息

警告:

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

注:

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

使用方法

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

  • “追踪”规则可用于追踪当前逻辑示意图中所表示的公共设施网络或追踪网络元素。

    要执行追踪规则,可以或必须根据所指定的具体追踪类型,在逻辑示意图中预设起点:

    • 对于“已连接”、“子网”、“上游”和“下游”追踪类型,除非先在逻辑示意图模板上配置设置起点规则来明确标识特定起点,否则会将追踪规则开始时逻辑示意图中所表示的所有公共设施网络或追踪网络元素均视为追踪的起点。
    • 对于最短路径追踪类型,必须在逻辑示意图模板上配置设置起点规则,以在逻辑示意图中当前所表示的所有追踪网络元素中标识出要在其间查找最短路径的两个起点。

  • 当基于追踪规则配置模板时,追踪将在每次更新逻辑示意图时在公共设施网络或追踪网络上系统地重新执行。这表示任何基于该模板的逻辑示意图在更新时都将始终反应当前的网络追踪结果。

语法

arcpy.nd.AddTraceRule(in_utility_network, template_name, is_active, trace_type, {domain_network}, {tier}, {target_tier}, {include_structures}, {include_barriers}, {condition_barriers}, {function_barriers}, {traversability_scope}, {filter_barriers}, {filter_function_barriers}, {filter_scope}, {filter_bitset_network_attribute_name}, {filter_nearest}, {nearest_count}, {nearest_cost_network_attribute}, {nearest_categories}, {nearest_assets}, {propagators}, {description}, {allow_indeterminate_flow}, {path_direction}, {path_network_weight_name})
参数说明数据类型
in_utility_network

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

Utility Network; Trace Network
template_name

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

String
is_active

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

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

请指定规则为了构建逻辑示意图内容将执行的追踪类型。

  • CONNECTED 当规则开始并沿连接元素向外跨越时,将通过逻辑示意图中当前表示的公共设施网络或追踪网络元素来执行连接追踪。这是默认设置。
  • SUBNETWORK 当规则开始并沿连接元素向外跨越时,将通过逻辑示意图中当前表示的公共设施网络元素来执行子网追踪,以查找沿相关子网向外跨越的源或汇。
  • UPSTREAM当规则开始时,将通过逻辑示意图中当前表示的公共设施网络或追踪网络元素来执行上溯追踪以查找上游要素。
  • DOWNSTREAM当规则开始时,将通过逻辑示意图中当前表示的公共设施网络或追踪网络元素来执行下溯追踪以查找下游元素。
  • SHORTEST_PATH 当规则开始沿起点之间的最短路径查找要素时,系统将从逻辑示意图中当前指定为起点的 trace network 要素执行最短路径追踪。遍历路径的成本取决于为 shortest_path_network_attribute_name 参数值设置的网络属性,而与流向无关。
String
domain_network
(可选)

针对 utility network 运行追踪的域网络名称。运行子网、上溯和下溯追踪类型时,需要此参数。

String
tier
(可选)

追踪针对 utility network 开始的层名称。运行已连接追踪类型时可以使用此参数; 运行子网、上溯和下溯追踪类型时必须使用此参数。

String
target_tier
(可选)

utility network 输入层流向的目标层名称。如果上溯和下溯追踪的此参数丢失,当到达起始子网边界时,上述追踪将停止。该参数可以使此类追踪在层级结构中继续向上或向下延伸。

String
include_structures
(可选)

指定追踪结果中是否包含结构要素和对象。

  • INCLUDE_STRUCTURES追踪结果中将包含结构要素和对象。
  • EXCLUDE_STRUCTURES追踪结果中将不包含结构要素和对象。这是默认设置。
Boolean
include_barriers
(可选)

指定追踪结果中是否包含可遍历性障碍要素。即使已在子网定义中进行了预设,可遍历性障碍仍可选。此参数不适用于具备终端的设备要素。

  • INCLUDE_BARRIERS追踪结果中将包含可遍历性障碍要素。这是默认设置。
  • EXCLUDE_BARRIERS追踪结果中将不包含可遍历性障碍要素。
Boolean
condition_barriers
[[Name, Operator, Type, Value, Combine Using],...]
(可选)

基于与网络属性的比较或对类别字符串的检查,对要素设置可遍历性障碍条件。条件障碍使用网络属性、运算符和类型以及属性值。例如,当要素的 Device Status 属性等于 Open 的特定值时,将停止追踪。当要素满足此条件时,追踪将停止。如果您要使用多个属性,可使用 Combine Using 参数来定义 And 或 Or 条件。

条件障碍组件如下:

  • Name - 按系统中定义的任何网络属性进行过滤。
  • Operator - 从大量不同的运算符中进行选择。
  • Type - 从 name 参数指定的值中选择特定值或网络属性。
  • Value - 提供会基于运算符值导致终止的输入属性类型的特定值。
  • Combine Using - 如果要添加多个属性,则设置此值。您可以使用 And 或 Or 条件来对它们进行组合。

条件障碍 operator 值选项如下:

  • IS_EQUAL_TO该属性等于该值。
  • DOES_NOT_EQUAL该属性不等于该值。
  • IS_GREATER_THAN该属性大于该值。
  • IS_GREATER_THAN_OR_EQUAL_TO该属性大于或等于该值。
  • IS_LESS_THAN该属性小于该值。
  • IS_LESS_THAN_OR_EQUAL_TO该属性小于或等于该值。
  • INCLUDES_THE_VALUES按位与运算,其中值中的所有位都存在于属性中(按位与 == 值)。
  • DOES_NOT_INCLUDE_THE_VALUES按位与运算,其中并非值中的所有位都存在于属性中(按位与 != 值)。
  • INCLUDES_ANY按位与运算,其中值中的至少一个位存在于属性中(按位与 == True)。
  • DOES_NOT_INCLUDE_ANY按位与运算,其中值中的所有位均不存在于属性中(按位与 == False)。

了解有关按位运算符的详细信息

条件障碍 Type 值选项如下:

  • SPECIFIC_VALUE按特定值过滤。
  • NETWORK_ATTRIBUTE按网络属性过滤。

条件障碍 Combine Using 值选项如下:

  • AND合并条件障碍。
  • OR满足任一条件障碍时使用。
Value Table
function_barriers
[[Function, Attribute, Operator, Value, Use Local Values],...]
(可选)

基于函数对要素设置可遍历性障碍。函数障碍可用于执行以下操作:限制追踪距离起点的行程或设置停止追踪的最大值。例如,所经过的每条线的长度和为目前经过的总距离。当经过的总长度达到指定值时,追踪将停止。

函数障碍组件如下:

  • Function - 从大量不同的计算函数中进行选择。
  • Attribute - 选择按系统中定义的任何网络属性进行过滤。
  • Operator - 从大量不同的运算符中进行选择。
  • Value - 提供将导致终止的输入属性类型(若发现)的特定值。
  • Use Local Values - 计算每个方向的值,而不是整体全局值。例如计算形状长度总和的函数障碍,其中,如果值大于或等于 4,则追踪终止。在全局情况下,遍历两条值为 2 的边之后,形状长度总和即已达到 4,因此追踪会停止。如果使用局部值,每条路径上的局部值会变化,因此追踪会持续得更远。

函数障碍 function 值选项如下:

  • AVERAGE输入值的平均值。
  • COUNT要素数目。
  • MAX输入值的最大值。
  • MIN输入值的最小值。
  • ADD各值的总和。
  • SUBTRACT各值之间的差值。子网控制器和循环追踪类型不支持减法函数。

函数障碍 operator 值选项如下:

  • IS_EQUAL_TO该属性等于该值。
  • DOES_NOT_EQUAL该属性不等于该值。
  • IS_GREATER_THAN该属性大于该值。
  • IS_GREATER_THAN_OR_EQUAL_TO该属性大于或等于该值。
  • IS_LESS_THAN该属性小于该值。
  • IS_LESS_THAN_OR_EQUAL_TO该属性小于或等于该值。
  • INCLUDES_THE_VALUES按位与运算,其中值中的所有位都存在于属性中(按位与 == 值)。
  • DOES_NOT_INCLUDE_THE_VALUES按位与运算,其中并非值中的所有位都存在于属性中(按位与 != 值)。
  • INCLUDES_ANY按位与运算,其中值中的至少一个位存在于属性中(按位与 == True)。
  • DOES_NOT_INCLUDE_ANY按位与运算,其中值中的所有位均不存在于属性中(按位与 == False)。

了解有关按位运算符的详细信息

函数障碍 Use Local Values 选项如下:

  • TRUE使用局部值。
  • FALSE使用全局值。这是默认设置。
Value Table
traversability_scope
(可选)

要强制使用的可遍历性的类型。可遍历性范围指明是否在交汇点、边或这两处强制使用可遍历性。例如,如果定义了一个条件障碍来停止追踪,且 Device Status 等于 Open 并将可遍历性范围设置为仅边,则即使遇到开路设备,追踪也不会停止,因为 Device Status 仅适用于交汇点。换言之,此参数会为追踪指明是否要忽略交汇点和/或边。

  • BOTH_JUNCTIONS_AND_EDGES将可遍历性同时应用于交汇点和边。这是默认设置。
  • JUNCTIONS_ONLY将可遍历性仅应用于交汇点。
  • EDGES_ONLY将可遍历性仅应用于边。
String
filter_barriers
[[Name, Operator, Type, Value, Combine Using],...]
(可选)

用于指定针对特定类别或网络属性的追踪停止时间。例如,针对生命周期状态属性等于特定值的要素,追踪停止。此参数用于根据系统中定义的网络属性值设置终止符。如果要使用多个属性,可使用 Combine Using 选项来定义 And 或 Or 条件。

过滤器障碍组件如下:

  • Name - 选择按类别或系统中定义的任何网络属性进行过滤。
  • Operator - 从大量不同的运算符中进行选择。
  • Type - 从 name 参数指定的值中选择特定值或网络属性。
  • Value - 提供会基于运算符值导致终止的输入属性类型的特定值。
  • Combine Using - 如果要添加多个属性,则设置此值。您可以选择使用 And 或 Or 条件来对它们进行组合。

过滤器障碍 operator 值选项如下:

  • IS_EQUAL_TO该属性等于该值。
  • DOES_NOT_EQUAL该属性不等于该值。
  • IS_GREATER_THAN该属性大于该值。
  • IS_GREATER_THAN_OR_EQUAL_TO该属性大于或等于该值。
  • IS_LESS_THAN该属性小于该值。
  • IS_LESS_THAN_OR_EQUAL_TO该属性小于或等于该值。
  • INCLUDES_THE_VALUES按位与运算,其中值中的所有位都存在于属性中(按位与 == 值)。
  • DOES NOT INCLUDE_THE_VALUES按位与运算,其中并非值中的所有位都存在于属性中(按位与 != 值)。
  • INCLUDES_ANY按位与运算,其中值中的至少一个位存在于属性中(按位与 == True)。
  • DOES_NOT_INLCUDE_ANY按位与运算,其中值中的所有位均不存在于属性中(按位与 == False)。

了解有关按位运算符的详细信息

过滤器障碍 Type 值选项如下:

  • SPECIFIC_VALUE按特定值过滤。
  • NETWORK_ATTRIBUTE按网络属性过滤。

过滤器障碍 Combine Using 值选项如下:

  • AND合并条件障碍。
  • OR满足任一条件障碍时使用。
Value Table
filter_function_barriers
[[Function, Attribute, Operator, Value, Use Local Values],...]
(可选)

用于过滤特定类别的追踪结果。

过滤器函数障碍组件如下:

  • Function - 从大量不同的计算函数中进行选择。
  • Attribute - 选择按系统中定义的任何网络属性进行过滤。
  • Operator - 从大量不同的运算符中进行选择。
  • Value - 提供将导致终止的输入属性类型(若发现)的特定值。
  • Use Local Values - 用于计算每个方向的值,而不是整体全局值。例如计算形状长度总和的函数障碍,其中,如果值大于或等于 4,则追踪终止。在全局情况下,遍历两条值为 2 的边之后,形状长度总和即已达到 4,因此追踪会停止。如果使用局部值,每条路径上的局部值会变化,否则追踪将继续。

过滤器函数障碍 function 值选项如下:

  • AVERAGE输入值的平均值。
  • COUNT要素数目。
  • MAX输入值的最大值。
  • MIN输入值的最小值。
  • ADD各值的总和。
  • SUBTRACT各值之间的差值。子网控制器和循环追踪类型不支持减法函数。

过滤器函数障碍 operator 值选项如下:

  • IS_EQUAL_TO该属性等于该值。
  • DOES_NOT_EQUAL该属性不等于该值。
  • IS_GREATER_THAN该属性大于该值。
  • IS_GREATER_THAN_OR_EQUAL_TO该属性大于或等于该值。
  • IS_LESS_THAN该属性小于该值。
  • IS_LESS_THAN_OR_EQUAL_TO该属性小于或等于该值。
  • INCLUDES_THE_VALUES按位与运算,其中值中的所有位都存在于属性中(按位与 == 值)。
  • DOES_NOT_INCLUDE_THE_VALUES按位与运算,其中并非值中的所有位都存在于属性中(按位与 != 值)。
  • INCLUDES_ANY按位与运算,其中值中的至少一个位存在于属性中(按位与 == True)。
  • DOES_NOT_INCLUDE_ANY按位与运算,其中值中的所有位均不存在于属性中(按位与 == False)。

了解有关按位运算符的详细信息

过滤器函数障碍 Use Local Values 选项如下:

  • TRUE使用局部值。
  • FALSE使用全局值。这是默认设置。
Value Table
filter_scope
(可选)

指定是否在交汇点、边或这两处强制使用特定类别的过滤器。例如,如果定义了用于停止追踪的过滤器障碍,其中 Device Status 等于 Open 并将遍历范围仅设置为边,则即使追踪遇到开路设备,追踪也不会停止,因为 Device Status 仅适用于交汇点。换言之,此参数会为追踪指明是否要忽略交汇点和/或边。

  • BOTH_JUNCTIONS_AND_EDGES过滤器将同时应用于交汇点和边。这是默认设置。
  • JUNCTIONS_ONLY过滤器将仅应用于交汇点。
  • EDGES_ONLY过滤器将仅应用于边。
String
filter_bitset_network_attribute_name
(可选)

将用于按 bitset 过滤的网络属性的名称。此参数仅适用于上溯、下溯和循环追踪类型。此参数可用于在追踪过程中添加特殊逻辑,以便追踪能够更好地反映真实世界的场景。例如,对于循环追踪而言,Phases current 网络属性可以确定该循环是否为实际的电气循环(相同的相在循环 A 中各处均有电流通过),并且追踪结果只返回实际的电气循环。上溯追踪的示例如下;如果追踪配电网络时指定 Phases current 网络属性,则追踪结果将只包含在网络属性中指定的有效路径,而不是所有路径。

String
filter_nearest
(可选)

指定是否使用 k-最近邻算法在给定距离内返回一些特定类型的要素。使用此参数时,您可以指定计数、成本以及类别和/或资产类型的集合。

  • FILTER_BY_NEAREST将使用 k-最近邻算法来返回 nearest_countnearest_cost_network_attributenearest_categoriesnearest_assets 参数中指定的一定数量的要素。
  • DO_NOT_FILTERk 最近邻算法不会用于过滤结果。这是默认设置。
Boolean
nearest_count
(可选)

filter_nearestFILTER_BY_NEAREST 状态时要返回的要素数量。

Long
nearest_cost_network_attribute
(可选)

filter_nearestFILTER_BY_NEAREST状态时,将用于计算接近度、成本或距离的数字网络属性(例如形状长度)。

String
nearest_categories
[nearest_categories,...]
(可选)

filter_nearest处于FILTER_BY_NEAREST状态时,将返回的类别(例如保护类别)。

String
nearest_assets
[nearest_assets,...]
(可选)

filter_nearest 处于 FILTER_BY_NEAREST 状态时,将返回的资产组和资产类型(例如,ElectricDistributionDevice/Transformer/Step Down)。

String
propagators
[[Attribute, Substitution Attribute, Function, Operator, Value],...]
(可选)

指定要传播的网络属性以及传播将在追踪过程中的发生方式。传播的类属性表示子网控制器上已传播至子网余下要素的关键值。例如,在配电模型中,您可传播相位值。

传播程序组件如下:

  • Attribute - 选择按系统中定义的任何网络属性进行过滤。
  • Substitution Attribute - 使用替换值而不是 bitset 网络属性值。替换是基于正在传播的网络属性中的位数进行编码的。替换是指同相位的某个位到另一个位的映射。例如对于相 AC 而言,可通过一个替换将位 A 映射到 B,将位 C 映射到 null。在该示例中,1010(相 AC)的替换是 0000-0010-0000-0000 (512)。该替换将捕捉映射,以通知您相 A 被映射到 B,且相 C 被映射到 null 而非相反(即相 A 未映射到 null,且相 C 未映射到 B)。
  • Function - 从大量计算函数中进行选择。
  • Operator - 从大量运算符中进行选择。
  • Value - 提供会基于运算符值导致终止的输入属性类型的特定值。

传播程序 function 值选项如下:

  • PROPAGATED_BITWISE_AND比较一个要素与下一个要素的值。
  • PROPAGATED_MIN获取最小值。
  • PROPAGATED_MAX获取最大值。

传播程序 operator 值选项如下:

  • IS_EQUAL_TO该属性等于该值。
  • DOES_NOT_EQUAL该属性不等于该值。
  • IS_GREATER_THAN该属性大于该值。
  • IS_GREATER_THAN_OR_EQUAL_TO该属性大于或等于该值。
  • IS_LESS_THAN该属性小于该值。
  • IS_LESS_THAN_OR_EQUAL_TO该属性小于或等于该值。
  • INCLUDES_THE_VALUES按位与运算,其中值中的所有位都存在于属性中(按位与 == 值)。
  • DOES_NOT_INCLUDE_THE_VALUES按位与运算,其中并非值中的所有位都存在于属性中(按位与 != 值)。
  • INCLUDES_ANY按位与运算,其中值中的至少一个位存在于属性中(按位与 == True)。
  • DOES_NOT_INCLUDE_ANY按位与运算,其中值中的所有位均不存在于属性中(按位与 == False)。

了解有关按位运算符的详细信息

注:

此参数仅可通过 Python 获得。

Value Table
description
(可选)

规则的描述。

String
allow_indeterminate_flow
(可选)

指定是否将追踪具有不确定或未初始化流向的追踪网络要素。此参数仅在运行上溯追踪或下溯追踪类型时使用。

  • TRACE_INDETERMINATE_FLOW追踪中包含具有不确定流向或未初始化流向的 trace network 要素。
  • IGNORE_INDETERMINATE_FLOW不包含具有不确定流向或未初始化流向的 trace network 要素。这是默认设置。
Boolean
path_direction
(可选)

指定追踪网络的路径的方向。遍历路径的成本取决于为 path_network_attribute_name 设置的值。此参数仅在运行 PATH 追踪类型时使用。

  • NO_DIRECTION查找两个起点之间的路径,无论流向如何。这是默认设置。
  • PATH_UPSTREAM查找两个起点之间的下游路径。
  • PATH_DOWNSTREAM查找两个起点之间的上游路径。
String
path_network_weight_name
(可选)

用于为 trace network 计算路径的网络属性。运行最短路径追踪类型时,使用数字网络属性(例如形状长度)计算最短路径。基于成本和距离的路径都可以进行计算。运行最短路径追踪时,需要此参数。

String

派生输出

名称说明数据类型
out_utility_network

已更新的 utility network or trace network。

公共设施网络;追踪网络
out_template_name

逻辑示意图模板的名称。

字符串

代码示例

AddTraceRule 示例(Python 窗口)

向给定网络现有的 MyTemplate1 添加追踪规则,以根据 ElectricDistribution 域中的中压层内的子网追踪生成逻辑示意图。

import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate1"
arcpy.AddTraceRule_nd(input_Network, input_DiagramTemplate, "ACTIVE", 
                      "SUBNETWORK", "ElectricDistribution", "Medium Voltage", 
                      "Low Voltage Mesh")

环境

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

许可信息

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

相关主题