Skip to main content

Add Mainline Tree Layout (Network Diagram Tools)

Summary

Adds the Mainline Tree Layout algorithm to the list of layouts to be automatically chained at the end of the building of diagrams based on a given template. This tool also presets the Mainline Tree Layout algorithm parameters for any diagram based on that template.

This layout algorithm arranges the junctions and edges in the input network diagram hierarchically along a main line and places its related branches on the left side, the right side, or both sides of the main line.

Learn more about the Mainline Tree layout algorithm

Caution:

This tool is a configuration and administration tool.

Note:

This tool impacts the consistency of any existing diagrams based on the input diagram template. All of the existing diagrams become inconsistent and open with a consistency warning icon until they are updated.

Usage

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

  • To preset the layout algorithm parameters for a diagram based on the diagram template, uncheck the Active parameter (is_active = "INACTIVE" in Python).

  • Run the tool with Active checked (is_active = "ACTIVE" in Python) if you want the layout algorithm to be added to the list of layouts that will be automatically chained at the end of diagram generation based on the input diagram template.

Parameters

Label Explanation Data type

Input Network

The utility network or trace network containing the diagram template that will be modified.

Utility Network; Trace Network

Input Diagram Template

The name of the diagram template that will be modified.

String

Active

Specifies whether the layout algorithm will automatically run when generating diagrams based on the specified template.

  • CheckedThe added layout algorithm will automatically run during the generation of any diagram based on the input template. This is the default. The parameter values specified for the layout algorithm are used to run the layout during diagram generation. They are also loaded by default when the algorithm is to be run on any diagram based on the input template.

  • UncheckedAll the parameter values currently specified for the added layout algorithm will be loaded by default when the algorithm is to be run on any diagram based on the input template.

Boolean

Preserve container layout

(Optional)

Specifies how the layout algorithm will process containers.

  • CheckedThe layout algorithm will apply to the top graph of the diagram so container layouts are preserved.

  • UncheckedThe layout algorithm will apply to both content and noncontent features in the diagram. This is the default.

Boolean

Tree Direction

(Optional)

Specifies the direction of the main line.

  • From left to rightThe main line will be drawn as a horizontal line starting from the left and ending on the right. This is the default.

  • From right to leftThe main line will be drawn as a horizontal line starting from the right and ending on the left.

  • From bottom to topThe main line will be drawn as a vertical line starting from the bottom and ending at the top.

  • From top to bottomThe main line will be drawn as a vertical line starting from the top and ending at the bottom.

String

Branches Placement

(Optional)

Specifies how branches from the main line will be relatively placed with regard to its direction.

  • Both sidesBranches will be placed on both the left and right sides of the main line. This is the default.

  • Left sideBranches will only be placed on the left side of the main line.

  • Right sideBranches will only be placed on the right side of the main line.

String

Spacing values interpreted as absolute units in the diagram coordinate system

(Optional)

Specifies how parameters representing distances will be interpreted.

  • CheckedThe layout algorithm will interpret distance values as linear units.

  • UncheckedThe layout algorithm will interpret distance values as relative units to an estimation of the average of the junction sizes in the current diagram extent. This is the default.

Boolean

Between Junctions Perpendicular to the Direction

(Optional)

The spacing between diagram junctions that are displayed along the axis perpendicular to the main line. The default is 2 in the diagram's coordinate system. This parameter can only be used with absolute units.

Linear Unit

Between Junctions Perpendicular to the Direction

(Optional)

The spacing between diagram junctions that are displayed along the axis perpendicular to the main line. The default is 2. This parameter can only be used with proportional units.

Double

Between Junctions Along the Direction

(Optional)

The spacing between diagram junctions that are displayed along the main line, as well as the spacing between diagram junctions that are displayed along the axis parallel to the main line. This parameter can only be used with absolute units. The default is 2 in the units of the diagram's coordinate system.

Linear Unit

Between Junctions Along the Direction

(Optional)

The spacing between diagram junctions that are displayed along the main line, as well as the spacing between diagram junctions that are displayed along the axis parallel to the main line. This parameter is used with proportional units. The default is 2.

Double

Between Disjoined Graphs

(Optional)

The minimum spacing that will separate features belonging to disjoined graphs when the diagram contains such graphs. This parameter is used with absolute units. The default is 4 in the units of the diagram's coordinate system.

Linear Unit

Between Disjoined Graphs

(Optional)

The minimum spacing that will separate features belonging to disjoined graphs when the diagram contains such graphs. This parameter is used with proportional units. The default is 4.

Double

Orthogonally display edges

(Optional)

Specifies how diagram edges that are related to the tree branches will display.

Legacy:

This parameter is deprecated at ArcGIS Pro 3.6. The display of tree branches is now controlled using the Edge Display Type parameter.

  • CheckedAll diagram edges related to the tree branches will display with right angles.

  • UncheckedAll diagram edges related to the tree branches will not display with right angles. This is the default.

Boolean

Break Point Relative Position (%)

(Optional)

The relative position of the break point that will be inserted along the diagram edges when Edge Display Type is set to Regular edges (edge_display_type = "REGULAR_EDGES" in Python) or Edge Display Type is set to Orthogonal edges (edge_display_type = "ORTHOGONAL_EDGES" in Python). It is a percentage between 0 and 100.

  • With a Break Point Relative Position (%) value of 0, the break point is positioned at the x-coordinate of the edge's from junction and at the y-coordinate of the edge's to junction for a horizontal tree. It is positioned at the y-coordinate of the edge's from junction and at the x-coordinate of the edge's to junction for a vertical tree.

  • With a Break Point Relative Position (%) value of 100, there is no break point inserted on the diagram edges; each diagram edge directly connects its from and to junctions.

  • With a Break Point Relative Position (%) value of N between 0 and 100, the break point is positioned at N% of the length of the [XY] segment, X being the x-coordinate of the edge's from junction and Y being the y-coordinate of the edge's to junction for a horizontal tree. It is positioned at N% of the length of the [YX] segment, Y being the y-coordinate of the edge's from junction and X being the x-coordinate of the edge's to junction for a vertical tree.

The relative position of the two inflection points that will be inserted along the diagram edges to compute the curved edges geometry when Edge Display Type is set to Curved edges (edge_display_type = "CURVED_EDGES" in Python). It is a percentage between 15 and 40. With a Break Point Relative Position (%) value of N between 15 and 40:

  • X being the x-coordinate of the edge's from junction and Y being the y-coordinate of the edge's to junction for a horizontal tree:

    • The first inflection point will be positioned at N% of the length of the [XY] segment.

    • The second inflection point will be positioned at (100 - N)% of the length of the [XY] segment.

  • Y being the y-coordinate of the edge's from junction and X being the x-coordinate of the edge's to junction for a vertical tree:

    • The first inflection point will be positioned at N% of the length of the [YX] segment.

    • The second inflection point will be positioned at (100 - N)% of the length of the [XY] segment.

Note:

The concept of the from and to junctions above is relative to the tree direction; it has nothing to do with the real topology of the edge feature or edge object in the network.

Double

Edge Display Type

(Optional)

Specifies the type of display for the diagram edges related to the tree branches.

  • Regular edgesAll diagram edges related to the tree branches will not display with right angles. This is the default.

  • Orthogonal edgesAll diagram edges related to the tree branches will display with right angles.

  • Curved edgesAll diagram edges related to the tree branches will be curved.

String

Absolute Offset

(Optional)

The offset that will be used to separate overlapping segments when using absolute units and Edge Display Type is set to Orthogonal edges. The value cannot exceed 10 percent of the smallest value specified for the other spacing parameters. The default is 0.

Linear Unit

Proportional Offset

(Optional)

The offset that will be used to separate overlapping segments when using proportional units and Edge Display Type is set to Orthogonal edges. It is a double value that cannot exceed 10 percent of the smallest value specified for the other spacing parameters. The default is 0.

Double

Derived output

Label Explanation Data type

Output Network

The updated utility network or trace network.

Utility Network; Trace Network

Output Diagram Template

The name of the diagram template.

String

Environments

This tool does not use any geoprocessing environments.

Licensing information

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