Sometimes it is necessary to place the connection points
on a rectangle smaller or larger than the bounding box, possibly in
a nonsymmetric way. For instance, it can happen when labels are displayed
below or above nodes.
É possível modificar a posição dos pontos de conexão
dos links fornecendo uma classe que implementa o ILinkConnectionBoxProvider. Use o método setLinkConnectionBoxInterface.
Para configurar um provedor de caixa de conexão de link no
Dojo, chame:
dojo.declare("MyLinkConnectionBoxProvider", ibm_ilog.graphlayout.ILinkConnectionBoxProvider, { getBox : function(graphModel, node) { var rect = graphModel.boundingBox(node); // modify rect... return rect; }, getTangentialOffset : function(graphModel, node, nodeSide) { var offset = 0; // modify offset according to nodeSide... return offset; } }); treeLayout.setLinkConnectionBoxInterface(new MyLinkConnectionBoxProvider());
A interface da caixa de conexão de link fornece a cada nó
uma caixa de conexão de link e um movimento de deslocamento tangencial que define
o quanto os pontos de conexão são “deslocados” tangencialmente,
dependendo do lado em que os links se conectam.
A figura a seguir ilustra os efeitos de customização da caixa
de conexão quando o estilo de conector é espaçado uniformemente.

Efeito da interface da caixa de conexão
À esquerda está o resultado sem nenhuma interface da caixa de
conexão. A figura do meio mostra o efeito se a interface da caixa de conexão
retornar o retângulo tracejado para o nó azul, mas o deslocamento
tangencial em todos os lados do nó for 0. Observe que os links de saída
são espaçados de acordo com o retângulo tracejado, que parece muito amplo
para o nó azul neste caso. A figura à direita mostra o efeito da interface
da caixa de conexão se, além disso, um deslocamento tangencial positivo
tiver sido especificado para a parte inferior e um deslocamento negativo
tiver sido especificado para o lado esquerdo do nó azul.