Vorgaben für HL hinzufügen und entfernen

Sie können dem hierarchischen Layout Vorgaben hinzufügen, indem Sie ein neues Vorgabenobjekt reservieren und die folgende Methode in der ibm_ilog.graphlayout.hierarchical.HierarchicalLayout-Instanz aufrufen:
layout.addConstraint(constraint);
Sie können beliebig viele Vorgaben hinzufügen. Die Vorgaben werden bei nachfolgenden Layoutaufrufen berücksichtigt, bis Sie sie entfernen. Zum Entfernen der letzten Vorgaben rufen Sie die folgende Methode auf:
layout.removeMostRecentConstraint();
Zum Entfernen einer bestimmten Vorgabe rufen Sie die folgende Methode auf:
layout.removeConstraint(constraint);
Zum Entfernen aller Vorgaben rufen Sie die folgende Methode auf:
layout.removeAllConstraints();
Sie können die Vorgaben, die einem hierarchischen Layout hinzugefügt wurden, mit der folgenden Methode abrufen:
var constraints = layout.getConstraints();
while(constraints.hasNext()){
	var constraint = constraints.next();
	// ...
}

Knotengruppen

Einige Vorgaben wirken sich nur auf einzelne Knoten aus. Andere Vorgaben wirken sich auf Gruppen von Knoten aus. Die Klasse ibm_ilog.graphlayout.hierarchical.HierarchicalNodeGroup ist eine komfortable Methode, eine Gruppe von Knoten anzugeben. Sie können eine Gruppe von Knoten wie folgt angeben:
group = new ibm_ilog.graphlayout.hierarchical.HierarchicalNodeGroup();
while (...) { 
	group.add(node);
}
Eine Knotengruppe hat eine ähnliche Funktion wie ein Vektor. Sie können die Größe und die Elemente der Gruppe abfragen, Elemente aus der Gruppe entfernen oder prüfen, ob ein Knoten bereits zur Gruppe gehört. Außerdem können Sie einen Vektor von Knoten in eine Gruppe konvertieren:
group.add(node)
Fügt der Gruppe einen Knoten hinzu.
group.remove(node)
Entfernt einen Knoten aus der Gruppe.
group.contains(node)
Prüft, ob ein Knoten in der Gruppe enthalten ist.
group.size()
Gibt die Anzahl der Knoten in der Gruppe zurück.
group.elements()
Gibt die Knoten der Gruppe als einfachen Cursor (IIterator) zurück.
group = new ibm_ilog.graphlayout.hierarchical.HierarchicalNodeGroup(array)
Erstellt eine Gruppe, die die im Eingabearray gespeicherten Knoten enthält.