Diagrammix3 不仅允许您将连接器附着到形状上,还允许将其附着到其他连接器上。这样就可以构建超出简单点对点连接的复杂关系模型。
为什么要连接连接器?
连接器到连接器的连接适用于:
- 注释:在连接线的特定点上附加标签或备注
- 分支点:显示流程分裂或汇合的位置
- 多方关系:为涉及两个以上实体的关系建模
- 层级流程:创建树状连接结构
- UML 交互:为消息拦截或交互点建模
创建连接器到连接器的附着
方法一:绘制到连接器
- 选择 连接器工具(按
C) - 点击第一个形状(或连接器)作为起点
- 拖向目标连接器的路径
- 悬停在 目标连接器上——它应该会高亮显示
- 释放 鼠标以完成附着
新的连接器现在会连接到目标连接器上,形成一个分支点。
方法二:修改现有连接器
- 选择一个已经绘制好的连接器
- 点击并拖动它的一个端点
- 将其拖到另一个连接器上
- 当目标高亮显示时释放
- 连接点会从形状转移到该连接器上
附着行为
将连接器附着到另一个连接器上时:
附着点:
- 连接器会附着在目标连接器路径上最接近的点
- 当目标移动或改变时,附着点会随之调整
- 附着点会沿目标路径保持其相对位置
视觉指示:
- 目标连接器上会出现一个小的连接标记
- 附着的连接器端点会吸附到该标记上
- 移动目标连接器会更新所有附着在其上的连接器
移动附着点
要调整连接器附着到另一个连接器的位置:
- 选择已附着的连接器
- 点击并拖动其已附着的端点
- 沿目标连接器路径滑动
- 在所需位置释放
附着点会沿路径滑动,但始终保持连接状态。
分离连接器
要断开连接器到连接器的附着:
- 选择已附着的连接器
- 将其端点拖离目标连接器
- 将其附着到某个形状上,或使其保持未附着状态
- 该连接器现在处于独立状态
或者:
- 直接删除已附着的连接器
- 在创建附着后立即使用 撤销
使用场景
流程注释
在流程的特定点添加备注或说明:
[开始] ──────────────→ [结束]
↓
[备注:"关键步骤"]
备注连接器附着在主流程的中点上。
决策树
创建多路分支:
[决策]
↓
├──→ [选项 A]
├──→ [选项 B]
└──→ [选项 C]
每个分支连接器都附着在主连接器的主干上。
UML 序列图
为消息返回或中断建模:
对象 A ─────消息────→ 对象 B
↑
└──返回
返回消息附着在原始消息连接器上。
网络图
显示网络连接上的分接点或监控点:
[路由器] ─────────────→ [交换机]
↓
[监控]
监控分接连接器附着在主网络链路上。
为附着的连接器设置样式
附着的连接器可以拥有与目标连接器不同的样式:
- 不同颜色:区分主连接和次连接
- 不同箭头:显示关系的方向或类型
- 不同虚线样式:表示可选分支还是必需分支
- 不同线宽:用更粗的线条强调主流程
这种视觉区分有助于读者理解复杂的图表。
与弯曲点结合使用
您可以为附着到其他连接器的连接器添加弯曲点:
- 将连接器附着到目标连接器
- 双击已附着的连接器以添加弯曲点
- 根据需要为已附着的连接器布线
- 即使一端附着在连接器上,弯曲点也能正常工作
这让您可以完全掌控复杂的布线场景。
限制
- 性能:数量非常多的连接器到连接器附着(50 个以上)可能会拖慢渲染速度
- 循环依赖:避免创建循环(连接器 A → 连接器 B → 连接器 A)
- 导出兼容性:某些导出格式可能无法保留连接器到连接器的关系
- 附着稳定性:快速移动形状可能导致附着点发生偏移
技巧
- 为了清晰起见才使用:只有在能让图表更清晰时才使用连接器到连接器
- 限制层级深度:避免将连接器附着到连接器再附着到连接器(三层深)
- 样式区分明显:让附着的连接器在视觉上与主连接器明显不同
- 在附着点添加标签:在附着点附近添加文字以说明关系
- 测试导出:如有需要,验证连接器到连接器的连接在导出后是否得以保留
替代方案
有时更简单的替代方案效果更好:
替代连接器到连接器的方式:
- 在分支点 添加一个形状
- 使用多个连接器 从同一个形状发出
- 直接在连接器上 添加文字注释
- 使用 连接点形状(小圆圈或圆点)作为明确的汇合点
当连接器到连接器显得过于复杂时,可以考虑这些替代方案。
技术说明
连接器到连接器的附着通过以下方式实现:
- 计算目标连接器路径上最近的点
- 创建一个参数化附着(沿路径的百分比位置)
- 当目标移动时重新计算附着点
- 保持沿目标路径的相对位置
这可以确保即使图表不断变化,附着关系也能保持连接。