Выровнять пакеты по вертикали в PlantUML - PullRequest
0 голосов
/ 06 мая 2020

У меня есть примерно такая структура классов:

@startuml
package "A" {
ABase <|-- A1
ABase <|-- A2
ABase <|-- A3
}
package "B" {
BBase <|-- B1
BBase <|-- B2
BBase <|-- B3
}
package "C" {
CBase <|-- C1
CBase <|-- C2
CBase <|-- C3
}
@enduml

PlantUML отображает пакеты рядом друг с другом. Это может стать слишком широким, если имена классов длиннее или имеется больше подклассов, поскольку подклассы всегда располагаются рядом друг с другом. Есть ли способ выровнять пакеты по вертикали?

Я пробовал использовать left to right direction, что является улучшением, но имеет свои проблемы. Я бы хотел, чтобы для каждого пакета было направление сверху вниз, но пакеты должны располагаться ниже друг друга.

1 Ответ

0 голосов
/ 07 мая 2020

Множество вертикально сложных диаграмм и то, что кажется часами горизонтальной прокрутки, заставили меня задать тот же вопрос, что и вы. Увы, единственный, по общему признанию, неустойчивый обходной путь, который я нашел до сих пор, - это создание вертикальных вспомогательных ссылок между классами. Это нормально для небольших диаграмм, но, как я уже сказал, я бы не назвал это устойчивым по мере роста вашей диаграммы.

@startuml

package "A" {
ABase <|-- A1
ABase <|-- A2
ABase <|-- A3
}
package "B" {
BBase <|-- B1
BBase <|-- B2
BBase <|-- B3
}
package "C" {
CBase <|-- C1
CBase <|-- C2
CBase <|-- C3
}

A2 -[hidden]down- BBase
B2 -[hidden]down- CBase

@enduml
...