Eine alternative Methode, die Platzierung einer Gruppe von Knoten in derselben Ebene
zu erzwingen, ist die Angabe einer Vorgabe für Gruppenverteilung mit einer Verteilungsgröße von
null (0). Im Allgemeinen bewirkt die Vorgabe für Gruppenverteilung die Platzierung einer Gruppe von Knoten
auf k+1 nachfolgenden Ebenen. Die Zahl
k ist die Verteilungsgröße. Sie wählt nicht den niedrigsten oder höchsten Ebenenindex
der Gruppe aus, sondern erfordert nur, dass die Knoten nicht mehr als
k Ebenen voneinander entfernt platziert werden.
Wenn also k=0 angegeben wird, werden alle Knoten in derselben Ebene platziert.
Im Folgenden wird die allgemeine Vorgabe für Gruppenverteilung für die Knoten mit den IDs
"nodeA", "nodeB" und "nodeC" veranschaulicht:
Rufen Sie Folgendes auf, wenn Sie die Vorgabe für Gruppenverteilung verwenden möchten:
var nodeGroup = new ibm_ilog.graphlayout.hierarchical.HierarchicalNodeGroup(); nodeGroup.add(nodeA); nodeGroup.add(nodeB); nodeGroup.add(nodeC); layout.addConstraint(new ibm_ilog.graphlayout.hierarchical.HierarchicalGroupSpreadConstraint(nodeGroup, 2));
Die Vorgabe ist erfüllt, wenn der höchste Ebenenindex für
nodeA
, nodeB
und
nodeC
nicht mehr als zwei Ebenen vom kleinsten Ebenenindex der Knoten entfernt ist.
Die Vorgabe ist beispielsweise erfüllt, wenn die Ebenenindizes für nodeA
, nodeB
und
nodeC
1, 2, 3 oder 7, 8, 9 oder 16, 14, 15 sind.
Die Vorgabe ist auch erfüllt, wenn alle drei Knoten
in Ebene 5 platziert sind oder wenn zwei der Knoten in Ebene 15 platziert sind und der dritte Knoten in Ebene
13. Die Vorgabe ist nicht erfüllt, wenn die Ebenenindizes
für nodeA
, nodeB
und nodeC
3, 5, 6 sind, weil
in diesem Fall der höchste Index (6) mehr als zwei Ebenen vom kleinsten Index
(3) entfernt ist.