Parâmetros de espaçamento

O espaçamento do layout é controlado principalmente por três parâmetros de espaçamento: a distância entre um pai e seus nós-filhos, a distância mínima entre irmãos e a distância mínima entre nós de diferentes ramificações. For example, if the flow direction is to the top or bottom, the offset between parent and child nodes is vertical; the sibling offset and the branch offset are horizontal.
Para alinhamento invertido, é fornecido um parâmetro de espaçamento adicional: a distância mínima entre ramificações, começando em um nó com alinhamento invertido. Este deslocamento é sempre ortogonal para o deslocamento de ramificação normal. Se a direção do fluxo for para a parte superior ou para a parte inferior, o deslocamento de ramificação invertido será vertical.
Dois gráficos
mostram o uso de parâmetros de espaçamento
Parâmetros de espaçamento
Para especificar parâmetros de espaçamento:
treeLayout.setParentChildOffset(100);
treeLayout.setSiblingOffset(100);
treeLayout.setBranchOffset(100);
treeLayout.setTipOverBranchOffset(100);
Associate nodes that have a tip-over-associate child alignment use special spacing parameters: the associate offset is the distance between the associate node and the center line that starts at the parent node. O deslocamento filho do pai é a distância entre o nó-pai e o primeiro nó associado.
Graph
showing spacing parameters for offsetting child node alignments.
Spacing of child alignments
Para especificar os parâmetros de espaçamento associado:
Use os métodos:
treeLayout.setParentChildAssociateOffset(offset);
treeLayout.setAssociateOffset(offset);

Para Especialistas: Parâmetros de Espaçamento Adicionais

Os parâmetros de espaçamento normalmente especificam os deslocamentos mínimos entre as bordas do nó. Portanto, o algoritmo de layout posiciona os nós de forma que eles não se sobreponham. You can also specify that the layout must ignore the node sizes.
Use o método setRespectNodeSizes:
treeLayout.setRespectNodeSizes(false);
Neste caso, os parâmetros de espaçamento são interpretados como as distâncias mínimas entre os centros dos nós, e os lados dos nós não são considerados durante o layout. However, if the specified offset parameters are now smaller than the node size, the nodes and links overlap. It often happens with orthogonal links in particular. Faz sentido usar esta opção apenas se todos os nós tiverem aproximadamente o mesmo tamanho, todos os links forem lineares e os parâmetros de espaçamento forem maiores que o maior nó.
Se o estilo de link for ortogonal, a forma dos links do pai para seus nós-filhos será semelhante a uma bifurcação (consulte Diferentes alinhamentos combinados no mesmo desenho). The position of the bend points in this shape can be influenced by the orthogonal fork percentage, a value 0 -100. It is a percentage of the parent-child offset. Se a porcentagem de bifurcação ortogonal for 0, a forma do link será bifurcada diretamente no nó-pai. Se a porcentagem for 100, a forma do link será bifurcada no nó-filho. A good choice is 25 -75. Esta porcentagem pode ser configurada.
Use o método setOrthForkPercentage:
treeLayout.setOrthForkPercentage(35); 
If the link style is not orthogonal, links can overlap neighboring nodes. It happens only in a few cases, for example, when a link starts at a small node that is neighboring a large node. Esta deficiência pode ser corrigida aumentando o deslocamento de ramificação. However, it influences the layout globally, affecting nodes without that deficiency. To avoid a global change, you can change the overlap percentage instead, which is a value 0 - 100. Este valor é usado por uma heurística interna do algoritmo de layout, que considera um nó como menor que esta porcentagem. A porcentagem padrão é 30. It results usually in better usage of the space. For small nodes neighboring large nodes, you are recommended to decrease the overlap percentage or to set it to 0. By taking this action, you disable this heuristic and avoid links overlapping nodes.
Para configurar a porcentagem de sobreposição:
Use o método setOverlapPercentage:
treeLayout.setOverlapPercentage(25);
Nota
Always set the orthogonal fork percentage to a value larger than the value of the overlap percentage.
Picture
of tree Llayouts illustrating the overlap percentage parameter
Efeito do uso da porcentagem de sobreposição