Criando raias

As raias são um tipo especial de subgráfico usado para dividir um gráfico em faixas verticais ou horizontais. As raias são normalmente usadas em processos de negócios ou diagramas de fluxo de trabalho para representar as organizações ou participantes em um processo.
Para criar raias:
  • Use a função graph.createSwimLane().
    O exemplo a seguir mostra como criar raias:
    var swimlane1 = graph.createSwimLane();
          swimlane1.setLabel("Swim lane 1");
          swimlane1.move(40, 40);
          swimlane1.setExplicitSize({width:600, height:100});
          
          var node1 = swimlane1.getGraph().createNode();
          node1.setLabel("Node 1");
          node1.move(30, 30);
          
          var node2 = swimlane1.getGraph().createNode();
          node2.setLabel("Node 2");
          node2.move(160, 30);
          
          var link1 = swimlane1.getGraph().createLink();
          link1.setStartNode(node1);
          link1.setEndNode(node2);
    
           var swimlane2 = graph.createSwimLane();
          swimlane2.setLabel("Swim lane 2");
          swimlane2.move(40, 180);
          swimlane2.setExplicitSize({width:600, height:100});
          
          var node3 = swimlane2.getGraph().createNode();
          node3.setLabel("Node 3");
          node3.move(330, 30);
          
          var node4 = swimlane2.getGraph().createNode();
          node4.setLabel("Node 4");
          node4.move(460, 30);
          
          var link2 = swimlane2.getGraph().createLink();
          link2.setStartNode(node3);
          link2.setEndNode(node4);
    
          var link3 = graph.createLink();
          link3.setStartNode(node2);
          link3.setEndNode(node3);
          link3.setShapeType(ibm_ilog.diagram.LinkShapeType.Orthogonal);
O gráfico resultante é semelhante ao seguinte:
Um gráfico mostra
duas raias horizontais, Raia 1 e Raia 2. A Raia
1 contém dois nós retangulares, Nó 1 e Nó 2, conectados por
um link. A Raia 2 contém dois nós retangulares, Nó 3 e Nó
4, conectados por um link. Um link também conecta o Nó 2 na Raia 1
ao Nó 3 na Raia 2.
Raias são semelhantes a subgráficos, com as seguintes diferenças:
  • As raias podem ser horizontais ou verticais:
    • O título de uma raia horizontal é exibido verticalmente, à esquerda (como no exemplo anterior) ou à direita. Para exibir o título à direita, use o seguinte método:
      swimlane.setRightToLeft(true); 
    • O título de uma raia vertical é sempre exibido horizontalmente, na parte superior. Para criar uma raia vertical, use o seguinte método:
      swimlane.setVertical(true); 
  • as raias não adaptam seu tamanho aos seus filhos automaticamente. Em vez disso, o tamanho de uma raia deve ser configurado explicitamente usando o seguinte método:
    swimlane.setExplicitSize({width:w, height:h});
  • Como as raias não se adaptam aos seus conteúdos, não é possível mover os nós de maneira interativa para fora dos limites da sua raia-pai.
  • as raias podem conter outras raias. Nesse caso, as raias aninhadas são automaticamente empilhadas na raia-pai. As raias aninhadas serão empilhadas verticalmente, se a raia-pai for horizontal, e horizontalmente, se a raia-pai for vertical. Para desativar o empilhamento automático, use o seguinte método:
    swimlane.setStackSublanes(false);
  • Quando as raias estão contidas em um gráfico anexado em um algoritmo de layout de gráfico hierarquicamente, o IBM® ILOG® Dojo Diagrammer configura automaticamente o layout para considerar as raias (consulte Layout Hierárquico (HL)).