Модель
Связь — объект, у которого есть два конца. Каждый конец хранит идентификатор объекта, а не точку на холсте. Из этого следует всё остальное:
- линия перестраивается, когда объект двигают;
- удаление объекта удаляет связь;
- «перетащить конец на другой объект» — это смена идентификатора, а не рисование заново.
Якоря
Якоря — точки на краю объекта, откуда может выйти линия. Они видны у выделенного объекта: пока объект не выделен, то же движение мышью перемещает его, а не создаёт связь.
Сторона якоря выбирается по взаимному расположению объектов. Если двигать объект вокруг другого, линия переходит на ближайшую сторону.
Маршрут
| Маршрут | Когда уместен |
|---|---|
| прямой | короткая связь между рядом стоящими объектами |
| угловой | схема, где важны горизонтали и вертикали |
| кривой | органичная схема, где острые углы мешают |
Маршрут — свойство связи, а не глобальная настройка: в одной схеме могут соседствовать разные.
Точки перегиба
Точка добавляется перетаскиванием сегмента линии и остаётся привязанной к связи. Такая точка жёсткая: при движении концов она сохраняет своё положение, поэтому линия огибает препятствие. Двойной щелчок по точке удаляет её и соединяет сегменты.
Предел — 32 точки на связь.
Ограничения модели
- Одна пара объектов — одна связь. Вторую линию между теми же объектами создать нельзя.
- Связь объекта с самим собой запрещена.
- Карточка канбана, фрейм и канбан не могут быть концом: у них нет края, к которому можно привязаться.
Куда дальше
Связи — что это даёт в работе и где предел.