Apply Rotate Tree Layout (Network Diagram)

Summary

Rotates the tree or trees related to pivot junctions currently set up in a diagram to the specified angle.

Learn more about the Rotate Tree 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 is 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 geodatabase.

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

  • This layout algorithm rotates the tree or trees related to the pivot junctions currently set up in the input network diagram layer according to the specified angle.

  • The Rotate Tree algorithm requires at least one pivot junction, such as a junction used as the center point around which the related graph will be rotated. The Rotate Tree layout also takes into account any barriers in the input diagram layer to prevent the algorithm from executing beyond the barriers.

  • When applying the layout with the Rotate junction symbols with the same angle parameter checked (rotate_junction = "ROTATE" in Python), the Angle parameter value (angle_rotation parameter value in Python) is added to the value of the rotation field for each processed diagram junction.

  • Consider applying the layout in asynchronous mode on the server when working on very large diagrams.

Syntax

arcpy.nd.ApplyRotateTreeLayout(in_network_diagram_layer, {are_containers_preserved}, {rotation_angle}, {run_async}, {rotate_junction})
ParameterExplanationData Type
in_network_diagram_layer

The network diagram to which the layout will be applied.

Diagram Layer
are_containers_preserved
(Optional)

Specifies how the algorithm will process containers.

  • PRESERVE_CONTAINERS The layout algorithm will execute on the top graph of the diagram so containers are preserved.
  • IGNORE_CONTAINERSThe layout algorithm will execute on both content and noncontent features in the diagram. This is the default.
Boolean
rotation_angle
(Optional)

The angle in degrees that will be used to rotate the tree. The default is 45 degrees.

Double
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 time-out: 600 seconds by default. This is the default.
Boolean
rotate_junction
(Optional)

Specifies whether the rotation_angle parameter value is added to the value of the rotation field for each processed diagram junction.

  • ROTATEThe rotation field value is updated for each processed diagram junction.
  • DO_NOT_ROTATEThe rotation field value is not updated. This is the default.
Boolean

Derived Output

NameExplanationData Type
out_network_diagram_layer

The updated network diagram layer.

Diagram Layer

Code sample

ApplyRotateTreeLayout example (Python window)

This sample script applies a 90-degree Rotate Tree layout to the diagram called Temporary Diagram while preserving the geometry of any content features.

import arcpy
arcpy.ApplyRotateTreeLayout_nd("Temporary Diagram", "PRESERVE_CONTAINERS", 90, 
                               "RUN_SYNCHRONOUSLY", "ROTATE")

Environments

This tool does not use any geoprocessing environments.

Licensing information

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

Related topics