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
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
iterations
—The number of layout algorithm iterations to process (Long)._number -
number
—The number of directions that must be used to align the diagram edges and their connected junctions (Enum):_of _directions - 4 for FOUR_DIRECTIONS
- 8 for EIGHT_DIRECTIONS
- 12 for TWELVE_DIRECTIONS
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:
-
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
grouping
—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)._distance -
vertices
—Specifies how vertices along edges in the diagram must be processed (Enum):_removal _rule - 1 for REMOVE_ALL
- 2 for KEEP_INSIDE_VERTICES
- 3 for KEEP_FIRST_VERTEX_OUTSIDE_AND_INSIDE_VERTICES
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:
-
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
iterations
—The number of layout algorithm iterations to process (Long)._number -
repel
—Increases diagram junctions displacement for junctions that are close together (Long)._factor -
degree
—Limits the area used to move the diagram junctions during each algorithm iteration (Enum):_freedom - 1 for LOW
- 2 for MEDIUM
- 3 for HIGH
-
edge
—The type of display for the diagram edges (Enum):_display _type - 0 for REGULAR_EDGES
- 2 for CURVED_EDGES
-
breakpoint
—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_position edge
(Double). This parameter is ignored when_display _type=1 edge
._display _type=0
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:
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active restore
—Specifies whether the layout algorithm will process diagram edges and restore geographic vertices along them if possible (Boolean)._edges _geo _positions
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:
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active cell
—The width of each grid cell in the diagram coordinate system (Double)._width cell
—The height of each grid cell in the diagram coordinate system (Double)._height
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:
-
is
—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)._unit _absolute -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
junction
—Specifies how the layout algorithm will move the diagram junctions (Enum):_placement _type - 1 for EQUAL_DISTANCE
- 2 for USER_DEFINE_DISTANCE
- 3 for ITERATIVE_DISTANCE
-
maximum
—The parameter expected when_shift junction
, which specifies the maximum distance that junctions with two connections can be spaced from the junctions to which they connect (Double)._placement _type = 3 -
minimum
—The parameter expected when_shift junction
, which specifies the minimum distance that will separate each junction with two connected edges from its two edges extremities after the layout applies (Double)._placement _type = 2 -
iterations
—The number of layout algorithm iterations to process (Long)._number -
is
—Specifies whether the layout algorithm will preserve the vertices along edges when applying (Boolean)._path _preserved -
are
—Specifies whether leaf junctions—that is, junctions with one connection—can be moved during the algorithm process (Boolean)._leaves _moved -
are
—Specifies whether leaf junctions—that is, junctions with one connection—can be expanded during the algorithm process (Boolean)._leaves _expanded -
expand
—The parameter expected when_shift are
, which specifies the maximum distance leaf junctions can be expanded (Double)._leaves _expanded = true
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:
-
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
is
—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)._unit _absolute -
tree
—The direction of the tree (Enum):_direction - 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
—Specifies how branches from the mainline are placed (Enum):_placement - 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 whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
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 whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
disjoined
—The minimum spacing that must separate features belonging to disjoined graphs when the diagram contains such graphs in the diagram coordinate system when_graph Absolute = True
or in proportional units whenis
(Double)._unit _absolute = False -
are
—Specifies whether the diagram edges related to the tree branches will display with right angles (Boolean)._edges _orthogonal -
breakpoint
—A double between 0 and 1 that determines the relative position of the break point on the diagram edges when_position edge
or_display _type=0 edge
. 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_display _type=1 edge
._display _type=2 -
edge
—The type of display for the diagram edges (Enum):_display _type - 0 for REGULAR_EDGES
- 1 for ORTHOGONAL_EDGES
- 2 for CURVED_EDGES
-
offset
—The offset that separates overlapping segments whenedge
. It is a double between 0 and 10 percent of the smallest other spacing parameters._display _type=1
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 >, "offset, < offset >]
}
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,
"offset",
0
]
}
MainRingDiagramLayout property set object
The MainRingDiagramLayout property set object provides the following information:
-
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
is
—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)._unit _absolute -
ring
—The type of ring (Enum):_type - 0 for RECTANGLE
- 1 for ELLIPSE
-
tree
—Specifies how the trees coming out of the main ring's junctions will be positioned (Enum):_type - 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
—The type of display for the trees' diagram edges (Enum)_display _type - 0 for REGULAR_EDGES
- 1 for ORTHOGONAL_EDGES
- 2 for CURVED_EDGES
-
ring
—The width of the ring in the diagram coordinate system when_width is
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
ring
—The height of the ring in the diagram coordinate system when_height is
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
perpendicular
—The spacing between diagram junctions that are displayed along the axis perpendicular to the tree direction in the diagram coordinate system whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
along
—The spacing between diagram junctions that are displayed along the tree direction in the diagram coordinate system whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
breakpoint
—A double between 0 and 1 that determines the relative position of the break point on the diagram edges when_position edge
or_display _type=0 edge
. 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_display _type=1 edge
._display _type=2 -
offset
—The offset that separates overlapping segments whenedge
. It is a double between 0 and 10 percent of the smallest other spacing parameters._display _type=1
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 >, "offset", < offset >]
}
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,
"offset",
0
]
}
PartialOverlappingEdgesDiagramLayout property set object
The PartialOverlappingEdgesDiagramLayout property set object provides the following information:
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active buffer
—The width of the buffer zone where you want the algorithm to search for collinear edge segments in the diagram coordinate system (Double)._width offset
—The distance that will separate the detected edge segments after the layout algorithm applies in the diagram coordinate system (Double).optimize
—Specifies whether the layout algorithm will optimize the segment placement order in each set of detected collinear segments to avoid crossing (Boolean)._edges
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:
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active is
—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)._unit _absolute initial
—The radius of the first concentric circle whose center is the radial tree root junction in the diagram coordinate system when_radius is
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False disjoined
—The minimum spacing that must separate features belonging to disjoined graphs when the diagram contains such graphs in the diagram coordinate system when_graph is
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False radius
—Represents the multiplicative factor used to increase or decrease the radius of each concentric circle (Double)._factor
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:
-
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
line
—The name of the network attribute that will be used to identify the lines that compose the straight lines (String)._attribute -
mainline
—The direction of the mainline (Enum):_direction - 1 for FROM_TOP_TO_BOTTOM
- 2 for FROM_LEFT_TO_RIGHT
-
offset
—The spacing between two adjacent branches along the axis perpendicular to the direction of the lines (Double)._between _branches -
breakpoint
—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_angle offset
parameter value to compute this position. When the break point angle value is 90 degrees, each branch displays orthogonally (Double)._between _branches -
type
— 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)._attribute -
mainline
—The_values type
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)._attribute -
branch
—The_values type
values that identify the branches. In a list of values, each value is separated by a semicolon (;) character (String)._attribute -
excluded
—The_values type
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)._attribute -
is
—Specifies whether the algorithm must compress the graph (Boolean)._compressing -
compression
— A number between 0 and 100 that is applied to the length of any edge after subtracting the minimal distance of its length. When_ratio compression
is 100, the distance between each detected junction group is equal to the minimal distance (Double)._ratio -
minimal
—The minimal distance that must be kept between two adjacent groups of neighbor junctions (Double)._distance -
alignment
—The name of the network attribute that will be used to align lines that are split (Double)._attribute -
length
—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_attribute length
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_attribute length
is specified, these distances are computed based on the values of this attribute for each edge (String)._attribute
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:
-
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
reshape
—The type of reshape operation the algorithm will process:_type - 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
—Specifies whether the layout algorithm will preserve the vertices along edges when it applies with_path _preserved reshape
(Boolean)._type=1 -
angle
—The angle formed by the incident segments by which the vertex related to these segments is reduced when the layout runs with_threshold reshape
(Double)._type=4 -
shift
—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_between _edge reshape
(Double)._type=3 -
offset
—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_between _segment Reshape
(Double).Type=1 -
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 withreshape
(Double)._type=1 -
circular
—The radius of the circular arc that will be added at the crossing edge locations when the layout applies with_arc _radius reshape
(Double)._type=5 -
circular
—Specifies the segment on which the circular arc will be inserted when the layout applies with_arc _position 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
{
"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:
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved angle
—The angle in degrees that will be used to rotate the tree (Double).rotation
—Specifies whether the algorithm adds up the_junction angle
parameter value to theElement rotation
field value for each processed diagram junction (Boolean).
JSON syntax
RotateTreeDiagramLayout property set syntax
{
"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
{
"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
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active shift
—The absolute spacing that will separate two edges (Double)._between _edge
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:
-
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved -
is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active -
is
—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)._unit _absolute -
tree
—The direction of the tree (Enum):_direction - 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 whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
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 whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
along
—The spacing between diagram junctions that are displayed along the smart tree direction in the diagram coordinate system whenis
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
disjoined
—The minimum spacing that must separate features belonging to disjoined graphs when the diagram contains such graphs in the diagram coordinate system when_graph is
or in proportional units when_unit _absolute = True is
(Double)._unit _absolute = False -
are
—Specifies whether the diagram edges related to the tree branches will display with right angles (Boolean)._edges _orthogonal -
breakpoint
—A double between 0 and 1 that determines the relative position of the break point on the diagram edges when_position edge
or_display _type=0 edge
. 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_display _type=1 edge
._display _type=2 -
edge
—The type of display for the diagram edges (Enum):_display _type - 0 for REGULAR_EDGES
- 1 for ORTHOGONAL_EDGES
- 2 for CURVED_EDGES
-
offset
—The offset that separates overlapping segments whenedge
. It is a double between 0 and 10 percent of the smallest other spacing parameters._display _type=1
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 >, "offset", < ooffset >]
}
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,
"offset",
0
]
}
SpatialDispatchDiagramLayout property set object
The SpatialDispatchDiagramLayout property set object provides the following information:
are
—Specifies whether the layout preserves the containers in the diagram (Boolean)._containers _preserved is
—Specifies whether the layout is an active layout during diagram generation and update. This parameter is always ignored when performing the applyLayout operation._active iterations
—The number of layout algorithm iterations to process (Long)._number maximum
—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)._shift _factor
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
]
}