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:

NoteNote:

This layout and its parameters are detailed in the Apply Angle Directed Layout tool topic.

JSON syntax

AngleDirectedDiagramLayout property set syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Compression Layout tool topic.

JSON syntax

CompressionDiagramLayout property set syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Force Directed Layout tool topic.

JSON syntax

ForceDirectedDiagramLayout property set syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Geo Positions Layout tool topic.

JSON syntax

GeoPositionsDiagramLayout property set syntax

{
   "type": "PropertySet",
   "propertySetItems": ["is_active", <true | false>, "restore_edges_geo_positions", <true | false>]
  }

JSON example

GeoPositionsDiagramLayout property set example

{
   "type": "PropertySet",
   "propertySetItems": [
    "is_active",
    false,
    "restore_edges_geo_positions",
    true
   ]
  }

GridDiagramLayout property set object

The GridDiagramLayout property set object provides the following information:

NoteNote:

This layout and its parameters are detailed in the Apply Grid Layout tool topic.

JSON syntax

GridDiagramLayout property set syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Linear Dispatch Layout tool topic.

JSON syntax

LinearDispatchDiagramLayout property set syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Mainline Tree Layout tool topic.

JSON syntax

MainLineTreeDiagramLayout property set syntax

{
  "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 >]
}

JSON example

MainLineTreeDiagramLayout property set example

{
   "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
   ]
  }

MainRingDiagramLayout property set object

The MainRingDiagramLayout property set object provides the following information:

NoteNote:

This layout and its parameters are detailed in the Apply Main Ring Layout tool topic.

JSON syntax

MainRingDiagramLayout property set syntax

{
   "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>]
  }

JSON example

MainRingDiagramLayout property set example

{
   "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
   ]
  }

PartialOverlappingEdgesDiagramLayout property set object

The PartialOverlappingEdgesDiagramLayout property set object provides the following information:

NoteNote:

This layout and its parameters are detailed in the Apply Partial Overlapping Edges Layout tool topic.

JSON syntax

PartialOverlappingEdgesDiagramLayout property set syntax

{
  "type": "PropertySet",
  "propertySetItems": ["is_active", <true | false>, "buffer_width", <buffer_width>, "offset", <offset>, "optimize_edges", < true | false >]
}

JSON example

PartialOverlappingEdgesDiagramLayout property set example

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Radial Tree Layout tool topic.

JSON syntax

RadialTreeDiagramLayout property set syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Relative Mainline Layout tool topic.

JSON syntax

RelativeMainlineDiagramLayout property set syntax

{
   "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Reshape Diagram Edges Layout tool topic.

JSON syntax

{
  "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

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Rotate Tree Layout tool topic.

JSON syntax

RotateTreeDiagramLayout property set syntax

{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", <true | false>, "rotation_angle", <rotation_angle>]
}

JSON example

RotateTreeDiagramLayout property set example

{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "rotation_angle",
    45
   ]
  }

SeparateOverlappingEdgesDiagramLayout property set object

The SeparateOverlappingEdgesDiagramLayout property set object provides the following information:

NoteNote:

This layout can also be executed using the ReshapeEdgesDiagramLayout property set object with reshape_type = 3.

JSON syntax

{
  "type": "PropertySet",
  "propertySetItems": ["are_containers_preserved", < true | false >, "is_active", <true | false>, "shift_between_edge", <shift_between_edge>]
}

JSON example

{
   "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:

NoteNote:

This layout and its parameters are detailed in the Apply Smart Tree Layout tool topic.

JSON syntax

SmartTreeDiagramLayout property set syntax

{
  "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 >]
}

JSON example

SmartTreeDiagramLayout property set example

{
   "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
   ]
  }

SpatialDispatchDiagramLayout property set object

The SpatialDispatchDiagramLayout property set object provides the following information:

NoteNote:

This layout and its parameters are detailed in the Apply Spatial Dispatch Layout tool topic.

JSON syntax

SpatialDispatchDiagramLayout property set syntax

{
  "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

{
   "type": "PropertySet",
   "propertySetItems": [
    "are_containers_preserved",
    false,
    "is_active",
    false,
    "iterations_number",
    5,
    "maximum_shift_factor",
    2
   ]
  }