描述
用于根据当前在活动地图中选择的网络元素或根据通过 Python 脚本创建的图层来创建临时网络逻辑示意图。
如果指定了图层并且在活动地图中选择了元素,则将忽略所选元素集,并且仅将指定的输入图层用作创建逻辑示意图时的输入。
如果未指定任何图层,则该工具将搜索在活动地图中选择的网络元素,然后根据这些元素创建逻辑示意图。
警告:
必须保存编辑内容,以使输出逻辑示意图与数据库中最近保存的网络拓扑同步。否则,未保存的编辑内容将不会反映在新逻辑示意图中。
使用方法
为输入网络参数指定的网络图层或网络数据元素可以来自文件地理数据库中的公共设施网络或追踪网络、公共设施网络服务,或者与企业级地理数据库中的公共设施网络的数据库连接。
此工具将在数据库中创建临时逻辑示意图。要访问该逻辑示意图并将其与其他工具(例如存储逻辑示意图工具)结合使用,请将其与创建逻辑示意图图层工具链接。
要基于特定的网络元素生成逻辑示意图,可在运行创建逻辑示意图工具之前,执行选择工具或创建要素层和按属性选择图层工具。
此工具适用于在输入地图中引用的图层中选择的网络要素以及在非空间表中选择的网络对象。
已选择的任何非网络元素将不包含在逻辑示意图中。如果仅选择了非网络元素,则不会创建输出逻辑示意图。
在以下情况下,创建逻辑示意图工具将失败:
- 在活动地图中选择的网络要素上存在脏区。
- 与在非空间表中选择的网络对象相关的容器网络要素上存在脏区。
语法
CreateDiagram(in_utility_network, template_name, {features})
参数 | 说明 | 数据类型 |
in_utility_network | 将从中创建逻辑示意图的 utility network or trace network。 | Utility Network; Trace Network; Utility Network Layer; Trace Network Layer |
template_name | 将用于创建逻辑示意图的模板名称。 | String |
features [features,...] (可选) | 要用作生成逻辑示意图时的输入的一个或多个要素图层。 | Feature Layer |
派生输出
名称 | 说明 | 数据类型 |
out_utility_network | 输出 utility network or trace network。 | 公共设施网络;追踪网络;公共设施网络图层;追踪网络图层 |
out_name | 网络逻辑示意图的名称。 | 字符串 |
代码示例
下列独立脚本会演示如何创建网络逻辑示意图并将其存储在数据库中。
# Name: GenerateAndStoreADiagram.py
# Description: Generate and store a diagram from a set of features based on a feature class and an attribute query.
# Import system modules
import arcpy
# Initialize variables
input_network = "https://cezembre.esri.com/server/rest/services/Naperville_Electric_SQL/FeatureServer/0"
input_fc = "https://cezembre.esri.com/server/rest/services/Naperville_Electric_SQL/FeatureServer/7"
sql_expression = "SUBNETWORKNAME='RMT003'"
template_name = "Basic"
output_diagram_name = "MyBasicRMT003Diagram"
# Set overwrite option
arcpy.env.overwriteOutput = True
# Make a layer from features in the feature class filtered out using an attribute query
FeatureLayer = arcpy.MakeFeatureLayer_management(input_fc, "built_featurelayer",
sql_expression)
# Create a diagram based on a given template name from those features
result = arcpy.CreateDiagram_nd(input_network, template_name,
"built_featurelayer")
diagram_name = result[1]
arcpy.MakeDiagramLayer_nd(input_network, diagram_name,
"built_diagramlayer")
# Store the resulting diagram in the database.
arcpy.StoreDiagram_nd("built_diagramlayer", output_diagram_name)
环境
此工具不使用任何地理处理环境。
许可信息
- Basic: 否
- Standard: 是
- Advanced: 是