Los carriles son áreas rectangulares perpendiculares a
los niveles.
- Si la dirección del flujo de los enlaces es hacia abajo o hacia arriba, los niveles son filas horizontales y los carriles son columnas verticales.
- Si la dirección del flujo de los enlaces es hacia la izquierda o hacia la derecha, los niveles son columnas verticales y los carriles son filas horizontales.
Puede utilizar carriles si los nodos se dividen en
grupos, para indicar qué nodos pertenecen a un grupo determinado. Los
nodos del mismo carril se colocan de forma que es posible dibujar un
rectángulo alrededor de ellos. Los carriles le permiten organizar el
gráfico como si fuera una tabla. Por ejemplo, puede tener un diagrama
de flujo de trabajo cuyos nodos representen acciones; los carriles
pueden representar los departamentos que realizan estas acciones.
Cada nodo puede pertenecer sólo a un carril.
Nota
Cuando se utiliza el diseño jerárquico para presentar
nodos y enlaces en un componente
Diagram que contiene
objetos de tipo carril (instancias de
(ibm_ilog.graphlayout.Swimlane),
se crean automáticamente instancias de
HierarchicalSwimLaneConstraint
para colocar los objetos hijo de los carriles en el mismo carril y
para establecer el tamaño correcto de los carriles.
Para asignar un grupo de nodos a un carril:
Llame a:
layout.addConstraint(new ibm_ilog.graphlayout.hierarchical.HierarchicalSwimLaneConstraint(new ibm_ilog.graphlayout.hierarchical.HierarchicalGroup(nodeArray)));
Todos los nodos del vector de nodos se colocan en el
mismo rectángulo del carril. Si un gráfico tiene muchos rectángulos
de carriles, el orden relativo de estos carriles se determina
automáticamente. El tamaño del rectángulo del carril depende de los
nodos que pertenecen al carril.
Sin embargo, puede especificar el orden relativo, el tamaño relativo
y los márgenes del carril utilizando el constructor:
new ibm_ilog.graphlayout.hierarchical. HierarchicalSwimLaneConstraint(group, relSize, posIndex , westMargin, eastMargin);)

Carriles
El tamaño relativo indica lo grande que es este carril
comparado con los otros carriles. Supongamos que la dirección del
flujo es hacia abajo. En este caso, el tamaño relativo indica el
ancho del carril. Todos los carriles que tienen el mismo tamaño
relativo tienen el mismo ancho. Un carril con un tamaño relativo que
sea dos veces el valor de otro carril será el doble de ancho que los
otros carriles. El número real de este parámetro no importa, sólo lo
grande que es el valor comparado con los otros carriles. Si no desea
restringir el tamaño del carril, establezca el valor en 0. En este
caso, el ancho del carril es independiente de los otros carriles.
El margen mínimo es el margen del carril en coordenadas
absolutas. Si la dirección del flujo es hacia abajo, entonces, el
margen mínimo oeste es la distancia horizontal mínima entre el nodo
de más a la izquierda del carril y el borde izquierdo del carril, y
el margen mínimo este es la distancia horizontal mínima entre el nodo
de más a la derecha del carril y el borde derecho del carril.
El índice de posición indica el orden de los carriles.
Al igual que los nodos tienen índices de posición, los carriles se
colocan de forma secuencial en las posiciones relativas numeradas de
0 a n. En un diseño de arriba abajo, el carril con la posición 0 es
el carril de más a la izquierda, y los carriles con los índices de
posición más altos se colocan más a la derecha. Si los carriles
tienen el índice de posición -1, el algoritmo de diseño determina la
posición adecuada automáticamente.
Una restricción de carril siempre se evalúa, aunque esté
habilitada la modalidad incremental. La restricción tiene una prioridad
mayor que la restricción de posición relativa y la restricción de uno
junto al otro.
Puede especificar restricciones de uno junto al otro para un grupo de
nodos que pertenecen al mismo carril, pero se hará caso omiso de las
restricciones de uno junto al otro de nodos de carriles distintos.
Puede especificar restricciones de posición relativa entre nodos del
mismo carril. También puede especificar restricciones de posición
relativa entre un grupo de carriles y otro grupo de carriles lo que,
de hecho, ordena los carriles. Pero las restricciones de posición
relativa se pasarían por alto si hiciera falta separar los carriles.
La restricción de carril domina a los índices de posición
especificados y las restricciones de extremo, es decir, que si se
utiliza una restricción de carril, no se pueden especificar índices
de posición ni restricciones de extremo este u oeste para un nodo.
Sugerencia
La resolución automática de conflictos puede manejar
restricciones que entran en conflicto. Sin embargo, para acelerar la
velocidad del diseño, se recomienda especificar restricciones de modo
que no haya conflictos.