Apply Partial Overlapping Edges Layout (Network Diagram)

Summary

Spaces out collinear edges or collinear portions of edges (edge segments) inside a given buffer zone.

Learn more about the Partial Overlapping Edges layout algorithm

Caution:

If you have an open edit session, you must save your edits prior to running this tool. This ensures that the diagram reflects the latest changes made to the network topology in the database. If you fail to save your edits, the edits will not be reflected in the diagram.

Note:

Each layout algorithm includes default parameter values. The default parameter values will be used unless otherwise specified. If the input network diagram is based on a template for which this layout has been configured with a different parameter value, that value will be used instead.

Usage

  • This tool is not supported when working with a database connection to a utility network or trace network in an enterprise geodatabase. You must use either the related published utility network or trace network service, or a utility network or trace network in a file or mobile geodatabase.

  • The input network diagram layer must be from either a utility network or a trace network in a file or mobile geodatabase or a network diagram service.

  • This layout algorithm detects sets of collinear edges or collinear portions of edges (edge segments) that can be considered as being inside a buffer zone of a given size.

  • The edges or segments must be relatively close to each other—more or less parallel, overlap, or nearly overlap—and similar in length. Segment buffer zones are then repositioned equally on the left and right sides, a proportional distance from the middle of the zone.

  • The distance between each segment is equal to a given offset. If vertices exist along diagram edges, the global orientation of the segments is preserved as much as possible. This is done so that, for example, a segment lying on the left side of another segment still ends up on the left side.

  • This layout algorithm is complex and may exceed the server time-out when applied to large diagrams. If you must apply the Partial Overlapping Edges Layout algorithm to the entire diagram content, consider running it in asynchronous mode on the server.

Parameters

LabelExplanationData Type
Input Network Diagram Layer

The network diagram to which the layout will be applied.

Diagram Layer
Buffer Width

The width of the buffer zone in which to search for collinear edge segments.

Linear Unit
Offset

The distance that will separate the detected edge segments.

Linear Unit
Optimize edges
(Optional)

Specifies how segments will be placed along edges:

  • Checked—The placement of segments will be optimized in each set of collinear segments. This is done by focusing on their connections instead of their positions. Segments that cross each other can be repositioned so they do not cross.
  • Unchecked—The initial position of each segment will be maintained in the collinear segment set and crossings will be preserved. This is the default.

Boolean
Run in asynchronous mode on the server
(Optional)

Specifies whether the layout algorithm will run asynchronously or synchronously on the server.

  • Checked—The layout algorithm will run asynchronously on the server. This option dedicates server resources to run the layout algorithm with a longer time-out. Running asynchronously is recommended when executing layouts that are time consuming and may exceed the server time-out (for example, Partial Overlapping Edges) and applying to large diagrams (more than 25,000 features).
  • Unchecked—The layout algorithm will run synchronously on the server. It can fail without completion if its execution exceeds the service default time-out value of 600 seconds. This is the default.

Boolean

Derived Output

LabelExplanationData Type
Output Network Diagram

The updated network diagram layer.

Diagram Layer

arcpy.nd.ApplyPartialOverlappingEdgesLayout(in_network_diagram_layer, buffer_width_absolute, offset_absolute, {optimize_edges}, {run_async})
NameExplanationData Type
in_network_diagram_layer

The network diagram to which the layout will be applied.

Diagram Layer
buffer_width_absolute

The width of the buffer zone in which to search for collinear edge segments.

Linear Unit
offset_absolute

The distance that will separate the detected edge segments.

Linear Unit
optimize_edges
(Optional)

Specifies how segments will be placed along edges:

  • OPTIMIZE_EDGESThe placement of segments will be optimized in each set of collinear segments. This is done by focusing on their connections instead of their positions. Segments that cross each other can be repositioned so they do not cross.
  • DO_NOT_OPTIMIZE_EDGESThe initial position of each segment will be maintained in the collinear segment set and crossings will be preserved. This is the default.
Boolean
run_async
(Optional)

Specifies whether the layout algorithm will run asynchronously or synchronously on the server.

  • RUN_ASYNCHRONOUSLYThe layout algorithm will run asynchronously on the server. This option dedicates server resources to run the layout algorithm with a longer time-out. Running asynchronously is recommended when executing layouts that are time consuming and may exceed the server time-out (for example, Partial Overlapping Edges) and applying to large diagrams (more than 25,000 features).
  • RUN_SYNCHRONOUSLYThe layout algorithm will run synchronously on the server. It can fail without completion if its execution exceeds the service default time-out value of 600 seconds. This is the default.
Boolean

Derived Output

NameExplanationData Type
out_network_diagram_layer

The updated network diagram layer.

Diagram Layer

Code sample

ApplyPartialOverlappingEdgesLayout example (Python window)

This sample applies the Partial Overlapping Edges Layout algorithm to the diagram called Temporary Diagram.

import arcpy
arcpy.ApplyPartialOverlappingEdgesLayout_nd("Temporary Diagram", "15 Feet", 
                                            "25 Feet", "DO_NOT_OPTIMIZE_EDGES", 
                                            "RUN_SYNCHRONOUSLY")

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: Yes
  • Advanced: Yes

Related topics