Abstandsparameter

Die Abstände im Layout werden hauptsächlich mit drei Abstandsparametern gesteuert: dem Abstand zwischen einem übergeordneten Knoten und seinen untergeordneten Knoten, dem Mindestabstand zwischen gleichgeordneten Knoten und dem Mindestabstand zwischen Knoten verschiedener Verzweigungen. Wenn die Arbeitsrichtung beispielsweise nach oben oder nach unten verläuft, ist das Offset zwischen übergeordnetem Knoten und untergeordneten Knoten vertikal. Das Offset zwischen gleichgeordneten Knoten und das Offset zwischen Verzweigungen sind horizontal.
Für die Tip-over-Ausrichtung wird ein zusätzlicher Abstandsparameter bereitgestellt: der Mindestabstand zwischen Verzweigungen, die an einem Knoten mit Tip-over-Ausrichtung beginnen. Dieses Offset ist immer orthogonal zum normalen Verzweigungsoffset. Wenn die Arbeitsrichtung nach oben oder nach unten verläuft, ist das Offset für Tip-over-Verzweigungen vertikal.
Zwei Graphen, die die
Verwendung der Abstandsparameter veranschaulichen
Abstandsparameter
Gehen Sie zum Festlegen der Abstandsparameter wie folgt vor:
treeLayout.setParentChildOffset(100);
treeLayout.setSiblingOffset(100);
treeLayout.setBranchOffset(100);
treeLayout.setTipOverBranchOffset(100);
Zugeordnete Knoten, die eine Ausrichtung für untergeordnete Knoten des Typs "zugordneten Knoten kippen" haben, verwenden spezielle Abstandsparameter: Das Offset für den zugeordneten Knoten ist der Abstand zwischen dem zugeordneten Knoten und der Mittellinie, der beim übergeordneten Knoten beginnt. Das Offset untergeordneter Knoten ist der Abstand zwischen dem übergeordneten Knoten und dem ersten zugeordneten Knoten.
Graph, der die Abstandsparameter
für den Versatz der Ausrichtung untergeordneter Knoten zeigt
Abstand bei untergeordneten Zuordnungen
Gehen Sie zum Festlegen der Abstandsparameter für zugeordnete Knoten wie folgt vor:
Verwenden Sie die folgenden Methoden:
treeLayout.setParentChildAssociateOffset(offset);
treeLayout.setAssociateOffset(offset);

Für Experten: Weitere Abstandsparameter

Die Abstandsparameter geben normalerweise die Mindestabstände zwischen Knotenrändern an. Der Layoutalgorithmus platziert die Knoten so, dass sie sich nicht überschneiden. Sie können aber auch festlegen, dass das Layout die Knotengrößen ignorieren soll.
Verwenden Sie die Methode setRespectNodeSizes:
treeLayout.setRespectNodeSizes(false);
In diesem Fall werden die Abstandsparameter als Mindestabstände zwischen Knotenmittelpunkten interpretiert, und die Knotenseiten werden während des Layouts nicht berücksichtigt. Wenn die angegebenen Offsetparameter jetzt jedoch kleiner sind als die Knotengröße, kommt es zu Überschneidungen zwischen Knoten und Links. Dies passiert insbesondere bei orthogonalen Links häufig. Es ist sinnvoll, diese Option nur zu verwenden, wenn alle Knoten ungefähr dieselbe Größe haben, alle Links gerade sind und die Abstandsparameter größer als der größte Knoten sind.
Wenn der orthogonale Linkstil verwendet wird, gleicht die Form der Links vom übergeordneten Knoten zu seinen untergeordneten Knoten einer Gabel (siehe Mischung verschiedener Ausrichtungen in derselben Zeichnung). Die Position der Kurvenpunkte in dieser Form kann durch einen Prozentsatz für orthogonale Gabelung, einem Wert zwischen 0 und 100, beeinflusst werden. Dies ist ein Prozentsatz des Offsets zwischen übergeordnetem Knoten und untergeordneten Knoten. Wenn der Prozentsatz für orthogonale Gabelung 0 ist, wird die Linkform direkt am übergeordneten Knoten gegabelt. Ist der Prozentsatz 100, wird die Linkform am untergeordneten Knoten gegabelt. Eine gute Wahl ist ein Wert zwischen 25 und 75. Dieser Prozentsatz kann festgelegt werden.
Verwenden Sie die Methode setOrthForkPercentage:
treeLayout.setOrthForkPercentage(35); 
Wenn der Linkstil nicht orthogonal ist, kann es zu Überschneidungen zwischen Links und benachbarten Knoten kommen. Dies passiert nur in seltenen Fällen, z. B., wenn ein Link an einem kleinen Knoten beginnt, der neben einem großen Knoten liegt. Dieser Mangel kann durch Erhöhen des Verzweigungsoffsets behoben werden. Allerdings hat dies einen globalen Einfluss auf das Layout, d. h., es sind auch Knoten betroffen, die diesen Mangel nicht aufweisen. Um eine globale Änderung zu vermeiden, können Sie stattdessen den Prozentsatz der Überschneidung ändern, für den Sie einen Wert zwischen 0 und 100 angeben können. Dieser Wert wird von einem internen heuristischen Verfahren des Layoutalgorithmus verwendet, das einen Knoten um diesen Prozentsatz kleiner macht. Der Standardprozentsatz ist 30. Die Verwendung dieses Parameter führt gewöhnlich zu einer besseren Nutzung des Platzes. Für kleine Knoten, die neben großen Knoten liegen, wird empfohlen, den Prozentsatz der Überschneidung zu verringern oder auf 0 zu setzen. Damit inaktivieren Sie das heuristische Verfahren und vermeiden Überschneidungen zwischen Links und Knoten.
Gehen Sie zum Festlegen des Prozentsatzes der Überschneidung wie folgt vor:
Verwenden Sie die Methode setOverlapPercentage:
treeLayout.setOverlapPercentage(25);
Hinweis
Setzen Sie den Prozentsatz für orthogonale Gabelung immer auf einen Wert, der größer ist als der Wert für den Prozentsatz der Überschneidung.
Abbildung von Baumstrukturlayouts, die den Parameter für den Prozentsatz der Überschneidung veranschaulicht
Effekt der Verwendung des Prozentsatzes der Überschneidung