Начиная ребро из узла - PullRequest
       22

Начиная ребро из узла

2 голосов
/ 11 августа 2011
digraph foo {
a [label="<first> A | <rest> rest", shape=record];
b [label="<first> B | <rest> rest", shape=record];
a:rest -> b [label="foo", arrowtail=dot, dir=both];
}

Я хотел бы начать хвост края (от a до b) изнутри a: rest (в идеале в центре), это возможно?

Я пытаюсь нарисовать связанные спискииспользуя поле и указатель, как обозначения.

1 Ответ

3 голосов
/ 11 августа 2011

Да, это возможно. Используемый атрибут называется tailclip:

Если true, хвост ребра обрезается до границы хвоста узел; в противном случае конец ребра переходит в центр узла, или центр порта, если применимо.

Просто измените свою последнюю строку на

a:rest -> b [label="foo", arrowtail=dot, dir=both, tailclip=false];

Редактировать: Как @Kyborek упоминает в комментариях, для текущих версий graphviz необходим дополнительный компас:

a:rest:c -> b [label="foo", arrowtail=dot, dir=both, tailclip=false];

См. Также этот ответ

...