修整逻辑示意图边布局 (网络逻辑示意图)

摘要

对沿边折点执行简单运算。

了解有关修整逻辑示意图边布局算法的详细信息

警告:

如果您具有处于打开状态的编辑会话,则在运行此工具前,必须先保存您的编辑内容。 从而确保逻辑示意图可反映对数据库中网络拓扑所做的最新更改。 如果保存编辑内容失败,则编辑内容不会反映在逻辑示意图中。

注:

各布局算法均包括默认参数值。 除非另行指定,否则将使用默认参数值。 如果输入网络逻辑示意图基于模板且已使用其他参数值来配置此布局,则会使用该值。

使用情况

  • 在与企业级地理数据库中的公共设施网络或追踪网络数据库连接搭配使用时,系统不支持此工具。 您必须使用相关的已发布公共设施网络或追踪网络服务或文件或移动地理数据库中的公共设施网络或追踪网络。

  • 输入网络逻辑示意图图层必须来自文件或移动地理数据库中的公共设施网络或追踪网络或者网络逻辑示意图服务。

  • 此布局算法可用于处理对于网络逻辑示意图边折点的简单操作。 这样您就可以:

    • 移除沿逻辑示意图边的所有折点。
    • 减少沿逻辑示意图边的部分折点。
    • 通过添加边上的折点来直角化逻辑示意图边。
    • 分离重叠的逻辑示意图边。
    • 检测彼此相交成直角的逻辑示意图边并修整其几何,以在相交位置显示圆弧。

  • 当处理非常大的逻辑示意图时,请考虑在服务器上以异步模式应用布局

参数

标注说明数据类型
输入网络逻辑示意图图层

将应用布局的网络逻辑示意图。

Diagram Layer
保留容器布局
(可选)

指定算法将如何处理容器。

  • 选中 - 对逻辑示意图的上方图应用布局算法,以保留容器。
  • 未选中 - 对逻辑示意图中的内容要素和非内容要素应用布局算法。 这是默认设置。

Boolean
修整操作

指定边的修整方法。

  • 移除折点将移除逻辑示意图中的沿边折点。
  • 方边折点将沿逻辑示意图边放置,且这些边将显示为直角。 这是默认设置。
  • 分离重叠边当连接相同起始和末端交汇点的边发生重叠时,将对边进行分离。
  • 按角度减少折点根据关联于折点的线段之间的角度减少沿逻辑示意图边显示的部分或所有折点。
  • 标记交叉边将标记出彼此相交成直角的水平和垂直逻辑示意图边并修整其几何,以在相交位置显示圆弧。
String
保留路径
(可选)

针对要组成方形的边,指定是否要保留沿这些边的折点。 当修整操作方边时,此参数处于活动状态。

  • 选中 - 将考虑任意边的方向,并将保留沿该边的折点(从第一个折点到最后一个折点)。 这是默认设置。
  • 未选中 - 不会考虑沿逻辑示意图边的折点;将移除折点。

Boolean
边之间的偏移
(可选)

关联于相同交汇点的方边各平行线段之间的间距。 默认值为逻辑示意图坐标系中的 5 个单位。 当修整操作方边时,此参数处于活动状态。

Linear Unit
中断点位置
(可选)

当关联于交汇点的边组成方形时,各交汇点与沿这些边的第一个或最后一个中断点之间的最大距离。 默认值为逻辑示意图坐标系中的8.66 个单位。 当修整操作方边时,此参数处于活动状态。

Linear Unit
边之间的偏移
(可选)

两条边之间的绝对间距。 默认值为逻辑示意图坐标系中的 0.5 个单位。 当修整操作分离重叠边时,此参数将处于活动状态。

Linear Unit
角度阈值
(可选)

由入射线段构成的角度,并根据此角度减少与这些线段相关的折点。 角度越大,则将减少的折点数越少。 默认值为 160 度。 当修整操作按角度减少折点时,此参数将处于活动状态。

Double
圆弧半径
(可选)

将向交叉边位置添加的圆弧的半径。 默认值为 5。

Linear Unit
圆弧位置
(可选)

指定将放置圆弧的线段。

  • 垂直线段左侧圆弧将放置在垂直线段左侧。
  • 垂直线段右侧圆弧将放置在垂直线段右侧。
  • 水平线段上方圆弧将放置在水平线段上方。
  • 水平线段下方圆弧将放置在水平线段下方。
String
在服务器上以异步模式运行
(可选)

指定布局算法在服务器上将异步运行还是同步运行。

  • 选中 - 布局算法将在服务器上异步运行。 服务器资源可通过该选项来运行超时较长的布局算法。 对于应用于大型逻辑示意图(超过 25,000 个要素)的耗时且可能导致服务器超时的布局(例如,部分重叠边),建议进行异步运行。
  • 未选中 - 布局算法将在服务器上同步运行。 如果超过服务默认超时值(600 秒),则布局算法可能失败,无法完成。 这是默认设置。

Boolean

派生输出

标注说明数据类型
输出网络逻辑示意图

更新的网络逻辑示意图图层。

Diagram Layer

arcpy.nd.ReshapeDiagramEdgesLayout(in_network_diagram_layer, {are_containers_preserved}, reshape_type, {is_path_preserved}, {offset_between_segment_absolute}, {breakpoint_absolute}, {shift_between_edge_absolute}, {angle_threshold}, {circular_arc_radius}, {circular_arc_position}, {run_async})
名称说明数据类型
in_network_diagram_layer

将应用布局的网络逻辑示意图。

Diagram Layer
are_containers_preserved
(可选)

指定算法将如何处理容器。

  • PRESERVE_CONTAINERS对逻辑示意图的上方图应用布局算法,以保留容器。
  • IGNORE_CONTAINERS对逻辑示意图中的内容要素和非内容要素应用布局算法。 这是默认设置。
Boolean
reshape_type

指定边的修整方法。

  • REMOVE_VERTICES将移除逻辑示意图中的沿边折点。
  • SQUARE_EDGES折点将沿逻辑示意图边放置,且这些边将显示为直角。 这是默认设置。
  • SEPARATE_OVERLAPPING_EDGES当连接相同起始和末端交汇点的边发生重叠时,将对边进行分离。
  • REDUCE_VERTICES_BY_ANGLE根据关联于折点的线段之间的角度减少沿逻辑示意图边显示的部分或所有折点。
  • MARK_CROSSING_EDGES将标记出彼此相交成直角的水平和垂直逻辑示意图边并修整其几何,以在相交位置显示圆弧。
String
is_path_preserved
(可选)

针对要组成方形的边,指定是否要保留沿这些边的折点。 仅当 reshape_typeSQUARE_EDGES 时,此参数才被启用。

  • PRESERVE_PATH将考虑任意边的方向,并将保留沿该边的折点(从第一个折点到最后一个折点)。 这是默认设置。
  • IGNORE_PATH不会考虑沿逻辑示意图边的折点;将移除折点。
Boolean
offset_between_segment_absolute
(可选)

关联于相同交汇点的方边各平行线段之间的间距。 默认值为逻辑示意图坐标系中的 5 个单位。 仅当 reshape_typeSQUARE_EDGES 时,此参数才被启用。

Linear Unit
breakpoint_absolute
(可选)

当关联于交汇点的边组成方形时,各交汇点与沿这些边的第一个或最后一个中断点之间的最大距离。 默认值为逻辑示意图坐标系中的8.66 个单位。 仅当 reshape_typeSQUARE_EDGES 时,此参数才被启用。

Linear Unit
shift_between_edge_absolute
(可选)

两条边之间的绝对间距。 默认值为逻辑示意图坐标系中的 0.5 个单位。 仅当 reshape_typeSEPARATE_OVERLAPPING_EDGES 时,此参数才被启用。

Linear Unit
angle_threshold
(可选)

由入射线段构成的角度,并根据此角度减少与这些线段相关的折点。 角度越大,则将减少的折点数越少。 默认值为 160 度。 仅当 reshape_typeREDUCE_VERTICES_BY_ANGLE 时,此参数才被启用。

Double
circular_arc_radius
(可选)

将向交叉边位置添加的圆弧的半径。 默认值为 5。

Linear Unit
circular_arc_position
(可选)

指定将放置圆弧的线段。

  • LEFT_OF_VERTICAL_SEGMENT圆弧将放置在垂直线段左侧。
  • RIGHT_OF_VERTICAL_SEGMENT圆弧将放置在垂直线段右侧。
  • ABOVE_HORIZONTAL_SEGMENT圆弧将放置在水平线段上方。
  • BELOW_HORIZONTAL_SEGMENT圆弧将放置在水平线段下方。
String
run_async
(可选)

指定布局算法在服务器上将异步运行还是同步运行。

  • RUN_ASYNCHRONOUSLY布局算法将在服务器上异步运行。 服务器资源可通过该选项来运行超时较长的布局算法。 对于应用于大型逻辑示意图(超过 25,000 个要素)的耗时且可能导致服务器超时的布局(例如,部分重叠边),建议进行异步运行。
  • RUN_SYNCHRONOUSLY布局算法将在服务器上同步运行。 如果超过服务默认超时值(600 秒),则布局算法可能失败,无法完成。 这是默认设置。
Boolean

派生输出

名称说明数据类型
out_network_diagram_layer

更新的网络逻辑示意图图层。

Diagram Layer

代码示例

ReshapeDiagramEdgesLayout 示例(Python 窗口)

此示例脚本会对名为 Temporary Diagram 的网络逻辑示意图图层运行 ReshapeDiagramEdgesLayout 函数,以按角度减少折点。

import arcpy
arcpy.nd.ReshapeDiagramEdgesLayout("Temporary Diagram", "PRESERVE_CONTAINERS", 
                                   "REDUCE_VERTICES_BY_ANGLE", angle_threshold=160)

环境

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

许可信息

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

相关主题