Appendix - Diagram Layout property set objects

Overview

This topic discusses the JSON Diagram Layout property set object as returned by the REST API for each diagram layout—AngleDirectedDiagramLayout, CompressionDiagramLayout, ForceDirectedDiagramLayout, GeoPositionsDiagramLayout, GridDiagramLayout, LinearDispatchDiagramLayout, MainLineTreeDiagramLayout, MainRingDiagramLayout, PartialOverlappingEdgesDiagramLayout, RadialTreeDiagramLayout, RelativeMainlineDiagramLayout, ReshapeEdgesDiagramLayout, RotateTreeDiagramLayout, SeparateOverlappingEdgesDiagramLayout, SmartTreeDiagramLayout, and SpatialDispatchDiagramLayout.

AngleDirectedDiagramLayout property set object

The AngleDirectedDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • iterations_number —The number of layout algorithm iterations to process (Long).

  • number_of_directions —The number of directions that must be used to align the diagram edges and their connected junctions (Enum):

    • 4 for FOUR_DIRECTIONS
    • 8 for EIGHT_DIRECTIONS
    • 12 for TWELVE_DIRECTIONS

JSON syntax

AngleDirectedDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "iterations_number", < iterations_number >, "number_of_directions", < 4 | 8 |12 >]
}

JSON example

AngleDirectedDiagramLayout property set sample

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "iterations_number",
    1,
    "number_of_directions",
    8
   ]
  }

CompressionDiagramLayout property set object

The CompressionDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • grouping_distance —The distance used to determine whether two connected junctions must be considered as part of the same junctions group in the diagram coordinate system (Double).

  • vertices_removal_rule —Specifies how vertices along edges in the diagram must be processed (Enum):

    • 1 for REMOVE_ALL
    • 2 for KEEP_INSIDE_VERTICES
    • 3 for KEEP_FIRST_VERTEX_OUTSIDE_AND_INSIDE_VERTICES

JSON syntax

CompressionDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "grouping_distance", < grouping_distance >, "vertices_removal_rule", < 1 | 2 | 3 >]
}

JSON example

CompressionDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    true,
    "is_active",
    false,
    "grouping_distance",
    20,
    "vertices_removal_rule",
    2
   ]
  }

ForceDirectedDiagramLayout property set object

The ForceDirectedDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • iterations_number —The number of layout algorithm iterations to process (Long).

  • repel_factor —Increases diagram junctions displacement for junctions that are close together (Long).

  • degree_freedom —Limits the area used to move the diagram junctions during each algorithm iteration (Enum):

    • 1 for LOW
    • 2 for MEDIUM
    • 3 for HIGH
  • edge_display_type —The type of display for the diagram edges (Enum):

    • 0 for REGULAR_EDGES
    • 2 for CURVED_EDGES
  • breakpoint_position —A double between 0.15 and 0.40 that determines the relative position of the two inflexion points that will be inserted along the diagram edges to compute the curved edges geometry when edge_display_type=1 (Double). This parameter is ignored when edge_display_type=0 .

JSON syntax

ForceDirectedDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "iterations_number", < NumberOfIterations >, "repel_factor", < RepelFactor >, "degree_freedom", < 1 | 2 | 3 >, "edge_display_type", < 0 | 1 >, "breakpoint_position", < breakpointPosition >]
}

JSON example

ForceDirectedDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "iterations_number",
    20,
    "repel_factor",
    1,
    "degree_freedom",
    1,
    "edge_display_type",
    0,
    "breakpoint_position",
    0.29999999999999999
   ]
  }

GeoPositionsDiagramLayout property set object

The GeoPositionsDiagramLayout property set object provides the following information:

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.
  • restore_edges_geo_positions —Specifies whether the layout algorithm will process diagram edges and restore geographic vertices along them if possible (Boolean).

JSON syntax

GeoPositionsDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
   "type": "PropertySet",
   "propertySetItems": ["is_active", < true | false >, "restore_edges_geo_positions", < true | false >]
  }

JSON example

GeoPositionsDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
{
   "type": "PropertySet",
   "propertySetItems": [
    "is_active",
    false,
    "restore_edges_geo_positions",
    true
   ]
  }

GridDiagramLayout property set object

The GridDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).
  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.
  • cell_width —The width of each grid cell in the diagram coordinate system (Double).
  • cell_height —The height of each grid cell in the diagram coordinate system (Double).

JSON syntax

GridDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "cell_width", < cell_width >, "cell_height", < cell_height >]
}

JSON example

GridDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "cell_width",
    2,
    "cell_height",
    2
   ]
  }

LinearDispatchDiagramLayout property set object

The LinearDispatchDiagramLayout property set object provides the following information:

  • is_unit_absolute —Specifies whether the layout parameters representing distances must be interpreted as linear units in the diagram coordinate system: True, or as relative units to an estimation of the average of the junctions sizes in the diagram when it's generated, or False (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • junction_placement_type —Specifies how the layout algorithm will move the diagram junctions (Enum):

    • 1 for EQUAL_DISTANCE
    • 2 for USER_DEFINE_DISTANCE
    • 3 for ITERATIVE_DISTANCE
  • maximum_shift —The parameter expected when junction_placement_type = 3 , which specifies the maximum distance that junctions with two connections can be spaced from the junctions to which they connect (Double).

  • minimum_shift —The parameter expected when junction_placement_type = 2 , which specifies the minimum distance that will separate each junction with two connected edges from its two edges extremities after the layout applies (Double).

  • iterations_number —The number of layout algorithm iterations to process (Long).

  • is_path_preserved —Specifies whether the layout algorithm will preserve the vertices along edges when applying (Boolean).

  • are_leaves_moved —Specifies whether leaf junctions—that is, junctions with one connection—can be moved during the algorithm process (Boolean).

  • are_leaves_expanded —Specifies whether leaf junctions—that is, junctions with one connection—can be expanded during the algorithm process (Boolean).

  • expand_shift —The parameter expected when are_leaves_expanded = true , which specifies the maximum distance leaf junctions can be expanded (Double).

JSON syntax

LinearDispatchDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["is_unit_absolute", < true | false >, "is_active", < true | false >, "junction_placement_type", < 1 | 2 | 3 >, "maximum_shift", < maximum_shift >, "minimum_shift", < minimum_shift >, "iterations_number", < iterations_number >, "is_path_preserved", < true | false >, "are_leaves_moved", < true | false >, "are_leaves_expanded", < true | false >, "expand_shift", < expand_shift >]
}

JSON example

LinearDispatchDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
   "type": "PropertySet",
   "propertySetItems": [
    "is_unit_absolute",
    false,
    "is_active",
    false,
    "junction_placement_type",
    1,
    "maximum_shift",
    2,
    "minimum_shift",
    2,
    "iterations_number",
    5,
    "is_path_preserved",
    true,
    "are_leaves_moved",
    false,
    "are_leaves_expanded",
    false,
    "expand_shift",
    2
   ]
  }

MainLineTreeDiagramLayout property set object

The MainLineTreeDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • is_unit_absolute —Specifies whether the layout parameters representing distances must be interpreted as linear units in the diagram coordinate system: True, or as relative units to an estimation of the average of the junctions sizes in the diagram when it's generated, or False (Boolean).

  • tree_direction —The direction of the tree (Enum):

    • 0 for FROM_RIGHT_TO_LEFT
    • 1 for FROM_TOP_TO_BOTTOM
    • 2 for FROM_LEFT_TO_RIGHT
    • 3 for FROM_BOTTOM_TO_TOP
  • branches_placement —Specifies how branches from the mainline are placed (Enum):

    • 0 for LEFT_SIDE_OF_MAIN_LINE
    • 1 for RIGHT_SIDE_OF_MAIN_LINE
    • 2 for BOTH_SIDES_OF_MAIN_LINE
  • perpendicular —The spacing between diagram junctions that are displayed along the axis perpendicular to the mainline in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • along —The spacing between diagram junctions that are displayed along the mainline and diagram junctions that are displayed along the axis parallel to this mainline in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • disjoined_graph —The minimum spacing that must separate features belonging to disjoined graphs when the diagram contains such graphs in the diagram coordinate system when Absolute = True or in proportional units when is_unit_absolute = False (Double).

  • are_edges_orthogonal —Specifies whether the diagram edges related to the tree branches will display with right angles (Boolean).

  • breakpoint_position —A double between 0 and 1 that determines the relative position of the break point on the diagram edges when edge_display_type=0 or edge_display_type=1 . A double between 0.15 and 0.40 that determines the relative position of the two inflexion points that will be inserted along the diagram edges to compute the curved edges geometry when edge_display_type=2 .

  • edge_display_type —The type of display for the diagram edges (Enum):

    • 0 for REGULAR_EDGES
    • 1 for ORTHOGONAL_EDGES
    • 2 for CURVED_EDGES
  • offset —The offset that separates overlapping segments when edge_display_type=1 . It is a double between 0 and 10 percent of the smallest other spacing parameters.

JSON syntax

MainLineTreeDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "is_unit_absolute", < true | false >, "tree_direction", < 0 | 1 | 2 | 3 >,  "branches_placement", < 0 | 1 | 2 >, "perpendicular", < perpendicular >, "along", < along >, "disjoined_graph", < disjoined_graph >, "are_edges_orthogonal", < true | false >, "breakpoint_position", < breakpoint_position >, "edge_display_type", < 0 | 1 | 2 >, "offset, < offset >]
}

JSON example

MainLineTreeDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "is_unit_absolute",
    false,
    "tree_direction",
    2,
    "branches_placement",
    2,
    "perpendicular",
    2,
    "along",
    2,
    "disjoined_graph",
    4,
    "are_edges_orthogonal",
    false,
    "breakpoint_position",
    0.29999999999999999,
    "edge_display_type",
    0,
    "offset",
    0
   ]
  }

MainRingDiagramLayout property set object

The MainRingDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • is_unit_absolute —Specifies whether the layout parameters representing distances must be interpreted as linear units in the diagram coordinate system: True, or as relative units to an estimation of the average of the junctions sizes in the diagram when it's generated, or False (Boolean).

  • ring_type —The type of ring (Enum):

    • 0 for RECTANGLE
    • 1 for ELLIPSE
  • tree_type —Specifies how the trees coming out of the main ring's junctions will be positioned (Enum):

    • 0 for LEFT_SIDE
    • 1 for RIGHT_SIDE
    • 2 for BOTH_SIDES
    • 3 for COMPACT_TREE (This value is currently ignored; it will be interpreted as 4.)
    • 4 for SMART_TREE
  • edge_display_type —The type of display for the trees' diagram edges (Enum)

    • 0 for REGULAR_EDGES
    • 1 for ORTHOGONAL_EDGES
    • 2 for CURVED_EDGES
  • ring_width —The width of the ring in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • ring_height —The height of the ring in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • perpendicular —The spacing between diagram junctions that are displayed along the axis perpendicular to the tree direction in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • along —The spacing between diagram junctions that are displayed along the tree direction in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • breakpoint_position —A double between 0 and 1 that determines the relative position of the break point on the diagram edges when edge_display_type=0 or edge_display_type=1 . A double between 0.15 and 0.40 that determines the relative position of the two inflexion points that will be inserted along the diagram edges to compute the curved edges geometry when edge_display_type=2 .

  • offset —The offset that separates overlapping segments when edge_display_type=1 . It is a double between 0 and 10 percent of the smallest other spacing parameters.

JSON syntax

MainRingDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
5
6
{
   "type": "PropertySet",
   "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "is_unit_absolute", < true | false >,
    "ring_type",< 1 | 2 >, "tree_type", < 1 |2 |3 |4 >, "edge_display_type", < 0 |1 |2 >, "ring_width", < RingWidth >,
    "ring_height", < RingHeight >, "perpendicular", < perpendicular >, "along", < along >, "breakpoint_position", < breakPoint >, "offset", < offset >]
  }

JSON example

MainRingDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "is_unit_absolute",
    false,
    "ring_type",
    1,
    "tree_type",
    4,
    "edge_display_type",
    0,
    "ring_width",
    50,
    "ring_height",
    20,
    "perpendicular",
    2,
    "along",
    2,
    "breakpoint_position",
    0.29999999999999999,
    "offset",
    0
   ]
  }

PartialOverlappingEdgesDiagramLayout property set object

The PartialOverlappingEdgesDiagramLayout property set object provides the following information:

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.
  • buffer_width —The width of the buffer zone where you want the algorithm to search for collinear edge segments in the diagram coordinate system (Double).
  • offset —The distance that will separate the detected edge segments after the layout algorithm applies in the diagram coordinate system (Double).
  • optimize_edges —Specifies whether the layout algorithm will optimize the segment placement order in each set of detected collinear segments to avoid crossing (Boolean).

JSON syntax

PartialOverlappingEdgesDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["is_active", < true | false >, "buffer_width", < buffer_width >, "offset", < offset >, "optimize_edges", < true | false >]
}

JSON example

PartialOverlappingEdgesDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
{
   "type": "PropertySet",
   "propertySetItems": [
    "is_active",
    false,
    "buffer_width",
    1,
    "offset",
    0.5,
    "optimize_edges",
    false
   ]
  }

RadialTreeDiagramLayout property set object

The RadialTreeDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).
  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.
  • is_unit_absolute —Specifies whether the layout parameters representing distances must be interpreted as linear units in the diagram coordinate system: True, or as relative units to an estimation of the average of the junctions sizes in the diagram when it's generated, or False (Boolean).
  • initial_radius —The radius of the first concentric circle whose center is the radial tree root junction in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).
  • disjoined_graph —The minimum spacing that must separate features belonging to disjoined graphs when the diagram contains such graphs in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).
  • radius_factor —Represents the multiplicative factor used to increase or decrease the radius of each concentric circle (Double).

JSON syntax

RadialTreeDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "is_unit_absolute", < true | false >, "initial_radius", < initial_radius >, "disjoined_graph", < disjoined_graph >, "radius_factor", < radius_factor >]
}

JSON example

RadialTreeDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "is_unit_absolute",
    false,
    "initial_radius",
    5,
    "disjoined_graph",
    10,
    "radius_factor",
    1
   ]
  }

RelativeMainlineDiagramLayout property set object

The RelativeMainlineDiagramLayout property set object provides the following information:

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • line_attribute —The name of the network attribute that will be used to identify the lines that compose the straight lines (String).

  • mainline_direction —The direction of the mainline (Enum):

    • 1 for FROM_TOP_TO_BOTTOM
    • 2 for FROM_LEFT_TO_RIGHT
  • offset_between_branches —The spacing between two adjacent branches along the axis perpendicular to the direction of the lines (Double).

  • breakpoint_angle —The angle that will be used to position the break point on the branches. It is a number between 30 and 90 degrees that is combined with the offset_between_branches parameter value to compute this position. When the break point angle value is 90 degrees, each branch displays orthogonally (Double).

  • type_attribute — The name of the network attribute that will be used to qualify the lines. This network attribute may exist on the utility network line classes. Its values allow lines to be typed. (String).

  • mainline_values —The type_attribute values that identify the main lines. When such values exist, they must be the same for any edge that composes the main lines regardless of their related utility network feature classes. In a list of values, each value is separated by a semicolon (;) character (String).

  • branch_values —The type_attribute values that identify the branches. In a list of values, each value is separated by a semicolon (;) character (String).

  • excluded_values —The type_attribute values that identify the edges that must be excluded from the straight lines, that is, crossovers or ladders. In a list of values, each value is separated by a semicolon (;) character (String).

  • is_compressing —Specifies whether the algorithm must compress the graph (Boolean).

  • compression_ratio — A number between 0 and 100 that is applied to the length of any edge after subtracting the minimal distance of its length. When compression_ratio is 100, the distance between each detected junction group is equal to the minimal distance (Double).

  • minimal_distance —The minimal distance that must be kept between two adjacent groups of neighbor junctions (Double).

  • alignment_attribute —The name of the network attribute that will be used to align lines that are split (Double).

  • length_attribute —The name of the network attribute from which the algorithm will assess the length of the diagram edges. This length determines the positions of the junctions along the direction. By default, without specifying the length_attribute property, the distances between the connected junctions along the direction are computed based on the current edge length and the length of the shortest edge. When length_attribute is specified, these distances are computed based on the values of this attribute for each edge (String).

JSON syntax

RelativeMainlineDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
   "type": "PropertySet",
   "propertySetItems": [
    "is_active", < true | false >,
    "line_attribute", < line_attribute >,
    "mainline_direction", < 1 | 2 >,
    "offset_between_branches", < offset_between_branches >,
    "breakpoint_angle", < breakpoint_angle >,
    "type_attribute", < type_attribute >,
    "mainline_values",< mainline_values >,
    "branch_values",< branch_values >,
    "excluded_values",< excluded_values >,
    "is_compressing", < true | false >,
    "compression_ratio", < compression_ratio >,
    "minimal_distance", < minimal_distance >,
    "alignment_attribute", < alignment_attribute >,
    "length_attribute", < length_attribute >
   ]
  }

JSON example

RelativeMainlineDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
   "type": "PropertySet",
   "propertySetItems": [
    "is_active",
    false,
    "line_attribute",
    "",
    "mainline_direction",
    2,
    "offset_between_branches",
    2,
    "breakpoint_angle",
    45,
    "type_attribute",
    "",
    "mainline_values",
    "",
    "branch_values",
    "",
    "excluded_values",
    "",
    "is_compressing",
    false,
    "compression_ratio",
    0,
    "minimal_distance",
    0,
    "alignment_attribute",
    "",
    "length_attribute",
    ""
   ]
  }

ReshapeEdgesDiagramLayout property set object

The ReshapeEdgesDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • reshape_type —The type of reshape operation the algorithm will process:

    • 1 for SQUARE_EDGES
    • 2 for REMOVE_VERTICES
    • 3 for SEPARATE_OVERLAPPING_EDGES
    • 4 for REDUCE_VERTICES_BY_ANGLE
    • 5 for MARK_CROSSING_EDGES
  • is_path_preserved —Specifies whether the layout algorithm will preserve the vertices along edges when it applies with reshape_type=1 (Boolean).

  • angle_threshold —The angle formed by the incident segments by which the vertex related to these segments is reduced when the layout runs with reshape_type=4 (Double).

  • shift_between_edge —The spacing that will separate two edges that have just been processed by the layout algorithm in the diagram coordinate system when it applies with reshape_type=3 (Double).

  • offset_between_segment —The spacing that will separate parallel segments of edges incident to a shared junction when those edges are squared, the distance being interpreted in the diagram coordinate system when the layout applies with ReshapeType=1 (Double).

  • breakpoint —The maximum distance between each junction to the first or last break point along edges incident to that junction when those edges are squared, the distance being interpreted in the diagram coordinate system when the layout applies with reshape_type=1 (Double).

  • circular_arc_radius —The radius of the circular arc that will be added at the crossing edge locations when the layout applies with reshape_type=5 (Double).

  • circular_arc_position —Specifies the segment on which the circular arc will be inserted when the layout applies with reshape_type=5 :

    • 1 for LEFT_OF_VERTICAL_SEGMENT
    • 2 for RIGHT_OF_VERTICAL_SEGMENT
    • 3 for ABOVE_HORIZONTAL_SEGMENT
    • 4 for BELOW_HORIZONTAL_SEGMENT

JSON syntax

Use dark colors for code blocksCopy
1
2
3
4
5
6
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "reshape_type", < 1 | 2 | 3 | 4 | 5 >, "is_path_preserved", < true | false >,
                       "angle_threshold", < angle_threshold >, "shift_between_edge", < shift_between_edge >, "offset_between_segment", < offset_between_segment >,
                       "breakpoint", < breakpoint >, "circular_arc_radius", < circular_arc_radius >, "circular_arc_position", < 1 | 2 | 3 | 4 >]
}

JSON example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "reshape_type",
    1,
    "is_path_preserved",
    true,
    "angle_threshold",
    0,
    "shift_between_edge",
    0.5,
    "offset_between_segment",
    5,
    "breakpoint",
    8.6600000000000001,
    "circular_arc_radius",
    5,
    "circular_arc_position",
    2
   ]
  }

RotateTreeDiagramLayout property set object

The RotateTreeDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).
  • angle —The angle in degrees that will be used to rotate the tree (Double).
  • rotation_junction —Specifies whether the algorithm adds up the angle parameter value to the Element rotation field value for each processed diagram junction (Boolean).

JSON syntax

RotateTreeDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "rotation_angle", < rotation_angle >, "rotation_junction", < true | false >]
}

JSON example

RotateTreeDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "rotation_angle",
    45,
    "rotation_junction",
    false
   ]
  }

SeparateOverlappingEdgesDiagramLayout property set object

The SeparateOverlappingEdgesDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).
  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.
  • shift_between_edge —The absolute spacing that will separate two edges (Double).

JSON syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "shift_between_edge", < shift_between_edge >]
}

JSON example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "shift_between_edge",
    0.5
   ]
  }

SmartTreeDiagramLayout property set object

The SmartTreeDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).

  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.

  • is_unit_absolute —Specifies whether the layout parameters representing distances must be interpreted as linear units in the diagram coordinate system: True, or as relative units to an estimation of the average of the junctions sizes in the diagram when it's generated, or False (Boolean).

  • tree_direction —The direction of the tree (Enum):

    • 0 for FROM_RIGHT_TO_LEFT
    • 1 for FROM_TOP_TO_BOTTOM
    • 2 for FROM_LEFT_TO_RIGHT
    • 3 for FROM_BOTTOM_TO_TOP
  • subtree —The spacing between two neighboring subtrees in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • perpendicular —The spacing between diagram junctions that are displayed perpendicularly to the smart tree direction and that belong to the same subtree level in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • along —The spacing between diagram junctions that are displayed along the smart tree direction in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • disjoined_graph —The minimum spacing that must separate features belonging to disjoined graphs when the diagram contains such graphs in the diagram coordinate system when is_unit_absolute = True or in proportional units when is_unit_absolute = False (Double).

  • are_edges_orthogonal —Specifies whether the diagram edges related to the tree branches will display with right angles (Boolean).

  • breakpoint_position —A double between 0 and 1 that determines the relative position of the break point on the diagram edges when edge_display_type=0 or edge_display_type=1 . A double between 0.15 and 0.40 that determines the relative position of the two inflexion points that will be inserted along the diagram edges to compute the curved edges geometry when edge_display_type=2 .

  • edge_display_type —The type of display for the diagram edges (Enum):

    • 0 for REGULAR_EDGES
    • 1 for ORTHOGONAL_EDGES
    • 2 for CURVED_EDGES
  • offset —The offset that separates overlapping segments when edge_display_type=1 . It is a double between 0 and 10 percent of the smallest other spacing parameters.

JSON syntax

SmartTreeDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "is_unit_absolute", < true | false >, "tree_direction", < 0 |1 | 2 | 3 >, "subtree", < subtree >, "perpendicular", < perpendicular >, "along", < along >, "disjoined_graph", < disjoined_graph >, "are_edges_orthogonal", < true | false >, "breakpoint_position", < breakpoint_position >, "edge_display_type", < 0 | 1 | 2 >, "offset", < ooffset >]
}

JSON example

SmartTreeDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "is_unit_absolute",
    false,
    "tree_direction",
    2,
    "subtree",
    2,
    "perpendicular",
    2,
    "along",
    2,
    "disjoined_graph",
    4,
    "are_edges_orthogonal",
    false,
    "breakpoint_position",
    0.29999999999999999,
    "edge_display_type",
    0,
    "offset",
    0
   ]
  }

SpatialDispatchDiagramLayout property set object

The SpatialDispatchDiagramLayout property set object provides the following information:

  • are_containers_preserved —Specifies whether the layout preserves the containers in the diagram (Boolean).
  • is_active —Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation.
  • iterations_number —The number of layout algorithm iterations to process (Long).
  • maximum_shift_factor —The intensity of the diagram junctions' displacement for junctions that are very close together. The larger the shift factor, the larger the separation between the diagram junctions that almost overlap (Long).

JSON syntax

SpatialDispatchDiagramLayout property set syntax

Use dark colors for code blocksCopy
1
2
3
4
{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", < true | false >, "iterations_number", < iterations_number >, "maximum_shift_factor", < maximum_shift_factor >]
}

JSON example

SpatialDispatchDiagramLayout property set example

Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "iterations_number",
    5,
    "maximum_shift_factor",
    2
   ]
  }

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.