Как я могу направить ребро, чтобы выйти из ромба справа?

У меня есть простая точечная диаграмма, чтобы показать, как выполнять тесты.

PerformTests;                                     PerformTests<---+
PerformTests -> TestsPassed;                            |         |
TestsPassed [shape="diamond"];                          v         |
TestsPassed -> Release [label="Yes"];             TestsPassed     |
TestsPassed -> FixErrors [label="No"];                 Y|  N\     |
FixErrors -> PerformTests;                              v    FixErrors
                                                     Release 

На диаграмме показаны квадратные прямоугольники для всех узлов, кроме TestPassed, который имеет форму ромба. Моя проблема здесь. Я бы хотел, чтобы край, выходящий за пределы ромба, для «Нет» выходил из ромба справа (восток), а не наклонно вниз-вправо (юго-восток).

           What I have        What I want
                ^                  ^    
               / \                / \   
              <   >              <   >--->  
               \ /\               \ /   
                v  \               v    

Я видел такое compass_pt в точечной грамматике, но не могу понять, как его использовать. Я то, что хочу, возможно, и как это сделать?


person Didier Trosset    schedule 06.05.2010    source источник
comment
Помогает ли ответ здесь? stackoverflow.com/ вопросы/1477532/   -  person Dan    schedule 06.05.2010


Ответы (2)


Просто добавьте compass_pt :e сразу после имени узла в объявлении ребра (строка 5).

PerformTests;                                     PerformTests<-----+
PerformTests -> TestsPassed;                            |           |
TestsPassed [shape="diamond"];                          v     N     |
TestsPassed -> Release [label="Yes"];             TestsPassed --> FixErrors
TestsPassed:e -> FixErrors [label="No"];               Y|  
FixErrors -> PerformTests;                              v
                                                     Release 

Точка компаса e обозначает восток (справа). Используйте w для левой стороны (запад). Также есть ne для Северо-Востока и так далее.

person Didier Trosset    schedule 07.05.2010

Вы также можете попробовать использовать атрибут constraint='false':

http://martin-loetzsch.de/DOTML/constraint.html

person Community    schedule 11.05.2010