导出子网 (公共设施网络)

摘要

将公共设施网络的子网导出为 .json 文件。 如果 Is deleted 属性设置为 true,则该工具也可以用于删除子网表中的行。 这表示子网控制器已从子网中移除。

注:

ArcGIS Enterprise 10.9.1 开始,在使用企业级地理数据库中的公共设施网络时,导出子网络操作将使用 UtilityNetworkTools 地理处理服务进行异步处理。 针对包含公共设施网络的要素服务,将在系统文件夹中对 UtilityNetworkTools 服务进行预配置。 该服务具有更长的超时设置,并且针对公共设施网络地理处理任务保留该服务。

了解有关导出子网的详细信息

使用情况

  • 导出子网前必须对其进行清理。需先运行更新子网工具。

  • Trace Parameters 类别中的参数仅可通过 Python 来执行。

  • 使用企业级地理数据库时,必须满足以下要求:
    • 输入公共设施网络参数值必须来自公共设施网络服务。
  • 在选中设置导出确认参数后,必须满足以下条件:

    • 必须启用网络拓扑。

    • 企业级地理数据库具有以下附加要求:

  • ArcGIS Pro 2.3 中添加了以下参数:包括几何结果类型结果网络属性结果字段。 使用这些参数时,输出 JSON 文件格式会有所不同。 将这些参数与企业级地理数据库结合使用时,需要 ArcGIS Enterprise 10.7 或更高版本。 查看输出 JSON 响应语法

参数

标注说明数据类型
输入公共设施网络

包含要导出的子网的公共设施网络。

Utility Network; Utility Network Layer
域网络

包含子网的域网络。

String

包含子网的层。

String
子网名称

要导出的子网的名称。 选择一个特定源可导出相应的子网信息。

String
设置导出确认

指定是否更新 Subnetworks 表中相应控制器的 LASTACKEXPORTSUBNETWORK 属性以及 SubnetLine 要素类中的要素。

  • 选中 - 子网表中相应控制器的 LASTACKEXPORTSUBNETWORK 属性将更新。 如果控制器已标记为删除 (Is deleted = True),则将从子网表中将其删除。 此选项要求输入公共设施网络引用默认版本。
  • 未选中 - 子网表中相应控制器的 LASTACKEXPORTSUBNETWORK 属性不会更新。 这是默认设置。

Boolean
输出 JSON

将生成的 .json 文件的名称和位置。

File
条件障碍
(可选)
注:

此参数仅可用于 Python

Value Table
函数障碍
(可选)
注:

此参数仅可用于 Python

Value Table
包括障碍要素
(可选)
注:

此参数仅可用于 Python

Boolean
应用可遍历性至
(可选)

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

  • 交汇点和边可遍历性将同时应用于交汇点和边。
  • 仅交汇点可遍历性将仅应用于交汇点。
  • 仅边可遍历性将仅应用于边。
注:

此参数仅可用于 Python

String
传播程序
(可选)
注:

此参数仅可用于 Python

Value Table
包括几何
(可选)

指定是否在结果中包括几何。

  • 选中 - 结果中将包含几何。
  • 未选中 - 结果中将不包含几何。 这是默认设置。

注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

Boolean
结果类型
(可选)

指定将要返回的结果类型。

  • 连通性将返回通过几何重叠或连通性关联连接的要素。 这是默认设置。
  • 要素将返回要素级别信息。
  • 包含和附件关联将返回通过包含和结构附件关联关联的要素。
注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

包含和附件关联选项需要 ArcGIS Enterprise 10.8.1 或更高版本。

String
结果网络属性
(可选)

将包含在结果中的网络属性。

注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

String
结果字段
(可选)

要素类中将作为结果返回的字段。 字段的值将在子网中要素的结果中返回。

注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

Value Table
包括域描述
(可选)

指定域描述是否将包含在输出 .json 文件中以传达控制器、要素元素、连通性和关联的域映射。

  • 选中 - 将在结果中包含域描述。
  • 未选中 - 不会在结果中包含域描述。 这是默认设置。

注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.9.1 或更高版本。

Boolean

派生输出

标注说明数据类型
更新的公共设施网络

更新的公共设施网络。

Utility Network

arcpy.un.ExportSubnetwork(in_utility_network, domain_network, tier, subnetwork_name, export_acknowledged, out_json_file, {condition_barriers}, {function_barriers}, {include_barriers}, {traversability_scope}, {propagators}, {include_geometry}, {result_types}, {result_network_attributes}, {result_fields}, {include_domain_descriptions})
名称说明数据类型
in_utility_network

包含要导出的子网的公共设施网络。

Utility Network; Utility Network Layer
domain_network

包含子网的域网络。

String
tier

包含子网的层。

String
subnetwork_name

要导出的子网的名称。 选择一个特定源可导出相应的子网信息。

String
export_acknowledged

指定是否更新 Subnetworks 表中相应控制器的 LASTACKEXPORTSUBNETWORK 属性以及 SubnetLine 要素类中的要素。

  • ACKNOWLEDGE子网表中相应控制器的 LASTACKEXPORTSUBNETWORK 属性将更新。 如果源已标记为删除 (Is deleted = True),则将从子网表中将其删除。 此选项要求输入公共设施网络引用默认版本。
  • NO_ACKNOWLEDGE子网表中相应控制器的 LASTACKEXPORTSUBNETWORK 属性不会更新。 这是默认设置。
Boolean
out_json_file

将生成的 .json 文件的名称和位置。

File
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 - 计算每个方向的值,而不是整体全局值。 例如,用于计算 Shape length 总和的函数障碍,其中,如果值大于或等于 4,则追踪终止。 在全局情况下,遍历两条值为 2 的边之后,形状长度总和即已达到 4,因此追踪会停止。 如果使用本地值,每条路径上的本地值会变化,因此追踪会持续得更远。

  • TRUE使用本地值。
  • FALSE使用全局值。 这是默认设置。

函数障碍 function 选项的可能值如下:

  • AVERAGE输入值的平均值。
  • COUNT要素数目。
  • MAX输入值的最大值。
  • MIN输入值的最小值。
  • ADD加上这些值。
  • SUBTRACT减去这些值。 子网控制器和循环追踪类型不支持减函数。

例如,起点要素的值为 20。 下一个要素的值为 30。 如果使用 Minimum 函数,则结果为 20;使用 Maximum 函数,结果为 30;使用 Add 函数,结果为 50;使用 Average 函数,结果为 25;使用 Count 函数,结果为 2;使用 Subtract 函数,结果为 -10。

函数障碍 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)。
Value Table
include_barriers
(可选)

指定追踪结果中是否包含可遍历性障碍要素。 即使已在子网定义中进行了预设,可遍历性障碍仍可选。

  • INCLUDE_BARRIERS追踪结果中将包含可遍历性障碍。 这是默认设置。
  • EXCLUDE_BARRIERS追踪结果中将不会包含可遍历性障碍。
Boolean
traversability_scope
(可选)

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

  • BOTH_JUNCTIONS_AND_EDGES可遍历性将同时应用于交汇点和边。
  • JUNCTIONS_ONLY可遍历性将仅应用于交汇点。
  • EDGES_ONLY可遍历性将仅应用于边。
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_INLCUDE_ANY值中的所有位均未存在于属性中的“按位与”运算(按位与 == False)。
Value Table
include_geometry
(可选)

指定是否在结果中包括几何。

  • INCLUDE_GEOMETRY结果中将包含几何。
  • EXCLUDE_GEOMETRY结果中将不包含几何。 这是默认设置。
注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

Boolean
result_types
[result_types,...]
(可选)

指定将要返回的结果类型。

  • CONNECTIVITY将返回通过几何重叠或连通性关联连接的要素。 这是默认设置。
  • FEATURES将返回要素级别信息。
  • CONTAINMENT_AND_ATTACHMENT_ASSOCIATIONS将返回通过包含和结构附件关联关联的要素。
注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

包含和附件关联选项需要 ArcGIS Enterprise 10.8.1 或更高版本。

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

将包含在结果中的网络属性。

注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

String
result_fields
[[Feature Class, Field Name],...]
(可选)

要素类中将作为结果返回的字段。 字段的值将在子网中要素的结果中返回。

注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.7 或更高版本。

Value Table
include_domain_descriptions
(可选)

指定域描述是否将包含在输出 .json 中以传达控制器、要素元素、连通性和关联的域映射。

  • INCLUDE_DOMAIN_DESCRIPTIONS将在结果中包含域描述。
  • EXCLUDE_DOMAIN_DESCRIPTIONS不会在结果中包含域描述。 这是默认设置。
注:

对于企业级地理数据库,此参数需要 ArcGIS Enterprise 10.9.1 或更高版本。

Boolean

派生输出

名称说明数据类型
out_utility_network

更新的公共设施网络。

Utility Network

代码示例

ExportSubnetwork 示例(Python 窗口)

将名为 RMT002 的源的相应子网信息导出为包含域描述的 .json 文件。

import arcpy
arcpy.ExportSubnetwork_un("Utility Network", "ElectricDistribution", 
                          "Medium Voltage", "RMT002", "ACKNOWLEDGE", 
                          "C:\\Temp\\RMT002clean.json", None, None, 
                          "INCLUDE_BARRIERS", "BOTH_JUNCTIONS_AND_EDGES", 
                          None, "EXCLUDE_GEOMETRY", None, None, None, 
                          "INCLUDE_DOMAIN_DESCRIPTIONS")

环境

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

许可信息

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

相关主题