Parámetro de alineación

La opción de alineación controla cómo se coloca el padre en relación con sus nodos hijo. La alineación se puede establecer de forma global, en cuyo caso todos los nodos están alineados de la misma manera, o de forma local para cada nodo, lo que da lugar a que se produzcan alineaciones diferentes en el mismo dibujo.
Serie
de diseños de árbol que muestran la alineación central, la alineación
al oeste, la alineación central del borde y la alineación al
este.
Opciones de alineación

Alineación global

Para establecer la alineación global:
treeLayout.setGlobalAlignment(ibm_ilog.graphlayout.tree.TreeLayout.WEST);
Los valores válidos para la alineación global son:
  • ibm_ilog.graphlayout.tree.TreeLayout.CENTER (valor predeterminado)
    El padre se centra en los nodos hijo, teniendo en cuenta el centro de los nodos hijo.
  • ibm_ilog.graphlayout.tree.TreeLayout.BORDER_CENTER
    El padre se centra en los nodos hijo, teniendo en cuenta el borde de los nodos hijo. Si el tamaño del primer y el último hijo varía, la alineación central del borde coloca al padre más cerca del hijo de mayor tamaño que de la alineación central predeterminada.
  • ibm_ilog.graphlayout.tree.TreeLayout.EAST
    El padre se alinea con el borde del hijo que está más al este. Por ejemplo, si la dirección del flujo es hacia abajo, el este está a la derecha. Si la dirección del flujo es hacia arriba, el este está a la izquierda. Para obtener más información, consulte Utilizar los puntos cardinales para parámetros de diseño posicionales (DA) .
  • ibm_ilog.graphlayout.tree.TreeLayout.WEST
    El padre se alinea con el borde del hijo que está más al oeste. Por ejemplo, si la dirección del flujo es hacia abajo, el oeste está a la izquierda. Si la dirección del flujo es a la derecha, el oeste está hacia abajo. Para obtener más información, consulte Utilizar los puntos cardinales para parámetros de diseño posicionales (DA) .
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_EAST
    Los nodos hijo se disponen de modo secuencial y no en paralelo, y el nodo padre se coloca con un desplazamiento con respecto a los nodos hijo. Los nodos hijo están al este del nodo padre. Para obtener más información, consulte Alineación de volcado.
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_WEST
    Los nodos hijo se disponen de modo secuencial y no en paralelo, y el nodo padre se coloca con un desplazamiento con respecto a los nodos hijo. Los nodos hijo están al oeste del nodo padre. Para obtener más información, consulte Alineación de volcado.
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_EAST_WEST
    Los nodos hijo se disponen de modo secuencial y no en paralelo, y el nodo padre se coloca con un desplazamiento con respecto a los nodos hijo. Los nodos hijo se disponen a ambos lados del nodo padre. El primer nodo hijo se coloca al este. Los nodos hijo posteriores se colocan al este o al oeste, de modo que el espacio utilizado a ambos lados sea aproximadamente el mismo; es decir, la suma de las alturas de los subárboles que hay al este es aproximadamente igual a la suma de las alturas de los subárboles que hay al oeste. Para obtener más información, consulte Alineación de volcado.
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_BOTH_SIDES
    Los nodos hijo se disponen de modo secuencial y no en paralelo. Mientras que la alineación TIP_OVER dispone todos los nodos hijo en el mismo lado del padre, esta alineación dispone los nodos hijo a ambos lados del padre. A diferencia de la alineación TIP_OVER_EAST_WEST, este estilo no intenta optimizar el espacio utilizado a ambos lados, sino que siempre coloca los nodos hijo impares al oeste y los pares al este. Cada par de nodos hijo, uno al oeste y otro al este, tiene los nodos pares e impares alineados el uno con el otro. Para obtener más información, consulte Alineación de volcado.
  • ibm_ilog.graphlayout.tree.TreeLayout.MIXED
    Cada nodo padre puede tener una alineación diferente. Se puede establecer la alineación de cada nodo individual; el resultado es que en el mismo gráfico pueden darse diferentes alineaciones.

Alineación de nodos individuales

Todos los nodos tienen la misma alineación a menos que la alineación global se establezca en MIXED. Sólo si la alineación global se establece en MIXED, cada nodo tiene un estilo de alineación individual.
Gráfico
de ejemplo con alineaciones diferentes en cada
subárbol
Alineaciones diferentes combinadas en el mismo dibujo
Para especificar la alineación de un nodo individual:
Utilice los métodos:
treeLayout.setGlobalAlignment(ibm_ilog.graphlayout.tree.TreeLayout.MIXED);
treeLayout.setAlignment(graph.children[1], ibm_ilog.graphlayout.tree.TreeLayout.EAST);  
Los valores válidos para alignment son:
  • ibm_ilog.graphlayout.tree.TreeLayout.CENTER (valor predeterminado)
  • ibm_ilog.graphlayout.tree.TreeLayout.BORDER_CENTER
  • ibm_ilog.graphlayout.tree.TreeLayout.EAST
  • ibm_ilog.graphlayout.tree.TreeLayout.WEST
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_EAST
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_WEST
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_EAST_WEST
  • ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_BOTH_SIDES

Alineación de volcado

Normalmente, los nodos hijo de un nodo se disponen en paralelo con sus hermanos como vecinos directos los unos de los otros. En cambio, la alineación de volcado significa que la disposición de los nodos hijos es secuencial.
Gráfico
de ejemplo que primero se muestra con alineación normal y, a
continuación, con alineación de volcado al este
Alineación normal y alineación de volcado
La alineación de volcado es útil cuando el árbol tiene muchos nodos finales. Con la alineación normal, un árbol con muchos nodos finales dará como resultado un diseño ancho. Si el estilo de alineación global se establece en "de volcado", el dibujo es alto en vez de ancho. Para equilibrar la anchura y la altura del dibujo, puede establecer la alineación global en mixta.
Por ejemplo:
treeLayout.setGlobalAlignment(ibm_ilog.graphlayout.tree.TreeLayout.MIXED);
Además, puede establecer la alineación individual en "de volcado" para algunos padres con un gran número de nodos hijo del modo siguiente:
treeLayout.setAlignment(parent, ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_EAST); 
Las alineaciones de volcado pueden especificarse explícitamente para algunos o para todos los nodos. El Diseño de árbol ofrece modalidades de diseño que automáticamente determinan cuando hay que aplicar la alineación de volcado, proporcionando un dibujo que se ajuste a una proporción especificada. Estas modalidades de diseño se describen en modalidades de diseño de volcado.
La alineación de volcado al este dispone los nodos al este de la línea central que empieza en el nodo padre. La alineación de volcado al oeste dispone los nodos al oeste de esta línea. También hay dos variantes que distribuyen los subárboles a ambos lados de esa línea. Puede especificar estas variantes en un nodo padre con un número elevado de nodos hijo mediante el código siguiente:
treeLayout.setAlignment(parent, ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_EAST_WEST);
o:
treeLayout.setAlignment(parent, ibm_ilog.graphlayout.tree.TreeLayout.TIP_OVER_BOTH_SIDES);
En las figuras siguientes se muestra la diferencia entre las alineaciones de volcado al este, al oeste y a ambos lados.
Gráfico
con cinco nodos hijo dispuestos en una alineación de volcado al este
y al oeste.
Gráfico
con cinco nodos hijo dispuestos en una alineación de volcado a ambos
lados.
Alineación de volcado al este y al oeste Alineación de volcado a ambos lados
La alineación de volcado funciona bien con el estilo de enlace ortogonal; consulte Estilo de enlace (DA) . La figura siguiente muestra la diferencia el volcado a un lado y el volcado a ambos lados. Para los nodos rojos se han especificado alineaciones de volcado; los nodos azules tienen alineación central.
Diseños
de árbol que muestran opciones de alineación de volcado al este y a
ambos lados en los nodos rojos.
Alineaciones de volcado

Alineaciones hijo

La alineación global es válida para todos los nodos. La alineación especificada para un nodo es válida para todos los nodos hijo de ese nodo. Además, puede especificar excepciones para determinados nodos que están alineados de un modo diferente a los otros nodos hijo. Esto es útil para representar organigramas. En un organigrama que muestra una jerarquía de gestión, algunas de las personas que se muestran no pertenecen a la jerarquía. En cambio, están asociadas con un miembro concreto de la jerarquía. Un ejemplo podría ser una secretaria asociada con un responsable de una compañía. En un organigrama en árbol, el nodo que representa a la secretaria normalmente se muestra cerca del nodo del responsable, pero no debe confundirse con los nodos hijo que representan los trabajadores normales que dependen de ese responsable.
Para establecer la alineación hijo de un nodo concreto:
Utilice los métodos:
treeLayout.setChildAlignment(node, alignment);
treeLayout.getChildAlignment(node);
Los valores siguientes son válidos para la alineación hijo:
En las figuras siguientes, los nodos amarillos tienen alineaciones hijo EAST_NEIGHBOR o WEST_NEIGHBOR y los nodos rojos tienen alineaciones hijo TIP_OVER_ASSOCIATE_EAST o TIP_OVER_ASSOCIATE_BOTH_SIDES. Para los nodos verdes no se ha especificado ninguna alineación hijo, es decir, se alinean con el estilo de alineación global.
Alineaciones
de nodos hijo: amarillo vecino oriental, rojo volcado al este
asociado, verde central.
Alineaciones
de nodos hijo: amarillo vecino oriental, rojo volcado al este
asociado, verde volcado a ambos lados.
Las alineaciones que se muestran son para el nodo amarillo: vecino oriental; para los nodos rojos: volcado al este asociado; y para los nodos verdes: central Las alineaciones que se muestran son para el nodo amarillo: vecino oriental; para los nodos rojos: volcado al este asociado; y para los nodos verdes: volcado a ambos lados
Alineaciones
de nodos hijo: amarillo vecino occidental, rojo volcado a ambos lados
asociado, verde central.
Alineaciones
de nodos hijo: amarillo vecino occidental, rojo volcado a ambos lados
asociado, verde volcado a ambos lados.
Las alineaciones que se muestran son para el nodo amarillo: vecino occidental; para los nodos rojos: volcado a ambos lados asociado; y para los nodos verdes: central Las alineaciones que se muestran son para el nodo amarillo: vecino occidental; para los nodos rojos: volcado a ambos lados asociado; y para los nodos verdes: volcado a ambos lados