Restrições de Posição Relativa (HL)

Trabalhar com índices de posição de nó absoluta é inconveniente em algumas situações. For example, if two nodes belong to the same level, you might want to force one node to a position with a lower index than the other node without fixing the absolute positions of the nodes. You can achieve it by using a relative position constraint.
A restrição de posição relativa força uma ordem específica nos nós de um nível, mas não especifica quais nós são vizinhos diretos. For instance, a relative position constraint can force nodeA to be placed somewhere at a lower position than nodeB, but there can be many nodes between nodeA and nodeB.
Chame:
layout.addConstraint(new ibm_ilog.graphlayout.hierarchical.HierarchicalRelativePositionConstraint(nodeA,nodeB,priority));
Isto força nodeA para uma posição inferior a nodeB. Se a direção do fluxo for para a parte inferior, os nós estarão em níveis horizontais; portanto, a restrição significa que nodeA será posicionado à esquerda de nodeB. Se a direção do fluxo for para a direita, os nós estarão em níveis verticais; portanto, a restrição significa que nodeA será posicionado abaixo de nodeB.
A restrição de posição relativa terá efeito apenas se os dois nós realmente pertencerem ao mesmo nível. To achieve it, you can, for instance, use a same level constraint in addition. Não existe uma maneira de influenciar a posição relativa de nós que pertencem a níveis diferentes.
Semelhante à restrição de nível relativo, a restrição de posição relativa pode ser aplicada a grupos de nós. Estas restrições também têm prioridades que indicam quais restrições dominarão se ocorrer um conflito de restrições. Quando mais alta a prioridade, maior a probabilidade de a restrição ser atendida durante a resolução de conflitos de restrições.