Diagrammix3 позволяет присоединять коннекторы не только к фигурам, но и к другим коннекторам. Это открывает возможности для сложного моделирования отношений, выходящего за рамки простых соединений «точка-точка».
Зачем соединять коннекторы
Соединения коннектор-с-коннектором полезны для:
- Аннотаций: прикрепления подписей или заметок к определённым точкам вдоль связи
- Точек ветвления: отображения места, где поток разделяется или объединяется
- Многосторонних связей: моделирования отношений, включающих более двух сущностей
- Иерархических потоков: создания древовидных структур соединений
- Взаимодействий UML: моделирования перехватов сообщений или точек взаимодействия
Создание соединений коннектор-с-коннектором
Способ 1: Провести до коннектора
- Выберите Инструмент «Соединитель» (нажмите
C) - Щёлкните на первой фигуре (или коннекторе) — это будет начальная точка
- Перетащите указатель к пути целевого коннектора
- Наведите курсор на целевой коннектор — он должен подсветиться
- Отпустите кнопку мыши, чтобы присоединить
Новый коннектор теперь присоединён к целевому коннектору, образуя точку ветвления.
Способ 2: Изменить существующий коннектор
- Выберите уже нарисованный коннектор
- Нажмите и перетащите одну из его конечных точек
- Перетащите её на другой коннектор
- Когда цель подсветится, отпустите кнопку мыши
- Точка соединения перемещается с фигуры на коннектор
Поведение при присоединении
Когда вы присоединяете коннектор к другому коннектору:
Точка присоединения:
- Коннектор присоединяется к ближайшей точке на пути целевого коннектора
- При перемещении или изменении цели точка присоединения корректируется
- Присоединение сохраняет своё относительное положение вдоль цели
Визуальные индикаторы:
- На целевом коннекторе появляется небольшой маркер соединения
- Конечная точка присоединённого коннектора привязывается к этому маркеру
- Перемещение целевого коннектора обновляет все присоединённые коннекторы
Перемещение точек присоединения
Чтобы изменить место, где коннектор присоединяется к другому коннектору:
- Выберите присоединённый коннектор
- Нажмите и перетащите присоединённую конечную точку
- Проведите её вдоль пути целевого коннектора
- Отпустите в нужном месте
Точка присоединения скользит вдоль пути, оставаясь соединённой.
Отсоединение коннекторов
Чтобы разорвать соединение коннектор-с-коннектором:
- Выберите присоединённый коннектор
- Оттащите его конечную точку от целевого коннектора
- Присоедините её к фигуре или оставьте несоединённой
- Теперь коннектор независим
Либо:
- Полностью удалите присоединённый коннектор
- Используйте Undo сразу после создания соединения
Варианты использования
Аннотации потока
Добавляйте заметки или комментарии к определённым точкам потока:
[Начало] ──────────────→ [Конец]
↓
[Заметка: «Критический шаг»]
Коннектор заметки присоединяется к средней точке основного потока.
Деревья решений
Создавайте многосторонние ветвления:
[Решение]
↓
├──→ [Вариант A]
├──→ [Вариант B]
└──→ [Вариант C]
Каждый коннектор ветви присоединяется к основному стволу коннектора.
Диаграммы последовательности UML
Моделируйте возвраты сообщений или прерывания:
Объект A ─────сообщение────→ Объект B
↑
└──возврат
Сообщение возврата присоединяется к исходному коннектору сообщения.
Сетевые диаграммы
Показывайте точки отвода или мониторинга вдоль сетевых соединений:
[Маршрутизатор] ─────────────→ [Коммутатор]
↓
[Монитор]
Коннектор отвода монитора присоединяется к основному сетевому каналу.
Стилизация присоединённых коннекторов
Присоединённые коннекторы могут иметь стиль, отличный от целевых:
- Разные цвета: чтобы отличать основные соединения от вторичных
- Разные стрелки: чтобы показать направление или тип связи
- Разные штриховые узоры: чтобы обозначить необязательные ветви в отличие от обязательных
- Разная толщина: чтобы выделить основной поток более толстыми линиями
Эта визуальная дифференциация помогает читателям разбираться в сложных диаграммах.
Сочетание с точками изгиба
Вы можете добавлять точки изгиба к коннекторам, присоединённым к другим коннекторам:
- Присоедините коннектор к целевому коннектору
- Дважды щёлкните на присоединённом коннекторе, чтобы добавить точки изгиба
- Проложите маршрут присоединённого коннектора по мере необходимости
- Точки изгиба работают как обычно, даже если один конец присоединён к коннектору
Это даёт вам полный контроль над сложными сценариями маршрутизации.
Ограничения
- Производительность: очень большое число соединений коннектор-с-коннектором (50+) может замедлить отрисовку
- Циклические зависимости: избегайте создания петель (коннектор A → коннектор B → коннектор A)
- Совместимость экспорта: некоторые форматы экспорта могут не сохранять связи коннектор-с-коннектором
- Стабильность присоединения: быстрое перемещение фигур может привести к смещению точек присоединения
Советы
- Используйте для ясности: применяйте соединение коннектор-с-коннектором, только если это делает диаграмму понятнее
- Ограничивайте глубину: избегайте присоединения коннекторов к коннекторам, присоединённым к коннекторам (три уровня вложенности)
- Стилизуйте по-разному: делайте присоединённые коннекторы визуально отличными от основных
- Подписывайте точки присоединения: добавляйте текст рядом с точками присоединения, чтобы пояснить связь
- Проверяйте экспорт: убедитесь, что соединения коннектор-с-коннектором сохраняются при экспорте, если это важно
Альтернативные подходы
Иногда более простые альтернативы работают лучше:
Вместо соединения коннектор-с-коннектором:
- Добавьте фигуру в точке ветвления
- Используйте несколько коннекторов от одной фигуры
- Добавьте текстовую аннотацию прямо на коннекторе
- Используйте фигуру-узел (небольшой кружок или точку) как явную точку соединения
Рассмотрите эти альтернативы, если соединение коннектор-с-коннектором кажется излишне сложным.
Технические детали
Соединения коннектор-с-коннектором работают следующим образом:
- Вычисляется ближайшая точка на пути целевого коннектора
- Создаётся параметрическое присоединение (процент вдоль пути)
- Точка присоединения пересчитывается при перемещении цели
- Сохраняется относительное положение вдоль цели
Это гарантирует, что соединения остаются связанными даже по мере изменения диаграммы.
Связанные разделы
- Коннекторы — основы работы с коннекторами
- Умные коннекторы — автоматическая маршрутизация
- Точки изгиба коннектора — маршрутизация вручную
- Диаграммы последовательности UML — типичный случай использования