Fonctions de l'agencement avec liens courts et de l'agencement avec liens longs
- Remodèle les liens d'un graphe dans un style orthogonal ou direct, sans déplacer les noeuds. Il est possible de combiner des liens orthogonaux et directs dans le même agencement.
- Permet de spécifier le côté du noeud (haut, bas, gauche ou droit) auquel un lien peut être connecté, ou de conserver les points de connexion existants des liens.
- Prend en charge les autoliens (liens avec le même noeud d'origine et de destination).
- Prend en charge les liens multiples (plus d'un lien entre les mêmes noeuds d'origine et de destination).
- Permet de spécifier des liens verrouillés (fixes) que l'algorithme d'agencement ne peut pas remodeler.
- Prend en charge les liens intergraphes de graphes imbriqués. Un lien intergraphe est un lien dont les noeuds de fin appartiennent à d'autres sous-graphes d'un graphe imbriqué.
- Prend en charge le mode incrémentiel. Si de nouveaux liens sont ajoutés à un tracé, l'agencement tient compte de la forme des anciens liens.
- Deux classes d'agencement : ibm_ilog.graphlayout.shortlink.ShortLinkLayout pour le mode avec liens courts, qui permet un nombre limité de coudes, ou ibm_ilog.graphlayout.longlink.LongLinkLayout pour le mode avec liens longs, qui permet un nombre illimité de coudes.
Fonctions de l'agencement avec liens courts
- Les liens sont positionnés librement dans l'espace.
- Les intersections lien-à-lien et lien-à-noeud sont réduites, si possible avec des formes de liens comportant quatre coudes au maximum.
- Des liens de différentes largeurs sont pris en charge.
- Les faisceaux de liens entre la même paire de noeuds sont pris en charge. Eventuellement, l'algorithme peut garantir le regroupement en faisceau de plusieurs liens en leur donnant des formes parallèles.
- Les segments de fin des liens (segments proches du noeud d'origine ou de destination) sont automatiquement organisés afin d'obtenir un faisceau de liens parallèles.
- Fournit deux formes optionnelles pour les autoliens.
- Algorithme rapide avec une empreinte mémoire basse
Fonctions de l'agencement avec liens longs
- Les liens sont positionnés sur une grille.
- Les intersections lien-à-noeud des liens orthogonaux sont évités, même si cela implique de nombreux coudes.
- Les segments de liens orthogonaux ne se chevauchent pas.
- Les segments de fin ne sont pas regroupés en faisceaux. Par contre, les liens sont répartis sur le bord de chaque noeud de fin, en fonction du bord comportant le plus d'espace disponible.
- Algorithme rapide. La vitesse et l'empreinte mémoire varient en fonction de l'espacement de grille.
Limitations
- Lors du routage des liens intergraphes, le mode incrémentiel ne peut pas être utilisé. En raison de la complexité du routage des liens intergraphes, d'autres intersections et chevauchements risquent de se produire lors du routage des liens normaux.
- En mode avec liens courts, les intersections et les chevauchements de liens avec d'autres liens et noeuds ne peuvent pas toujours être évités car l'algorithme utilise des formes de lien avec un nombre limité de coudes. Cela se produit surtout lorsque les obstacles sont nombreux entre les points finals d'un lien.
- En mode avec liens longs, l'intersection de liens ne peut pas toujours être évitée. Le chevauchement des segments de liens orthogonaux est toujours évité sauf s'il ne reste plus d'espace disponible sur le bord des noeuds de fin. Le chevauchement de noeuds et de liens est toujours évité sauf si un noeud de fin se trouve au sein d'une enclave. Une enclave est une zone qui est entourée par d'autres noeuds et qui, par conséquent, ne peut pas être atteinte depuis l'autre noeud de fin, voire Noeud au sein d'une enclave.
- En mode avec liens longs, le chevauchement de segments ou entre les noeuds et les liens ne peut pas toujours être évité si des liens directs sont utilisés.
- Le mode avec liens longs est plus lent et utilise davantage de mémoire si l'espacement de grille est petit.