Diagrammix3 では、コネクタをシェイプだけでなく、他のコネクタにも接続できます。これにより、単純なポイントツーポイント接続を超える複雑なリレーションシップモデリングが可能になります。

なぜコネクタを接続するのか?

コネクタ間接続は以下の場合に役立ちます:

  • アノテーション: 接続に沿った特定のポイントにラベルやメモを添付
  • 分岐点: フローが分岐または合流する場所を表示
  • 多方向リレーションシップ: 3つ以上のエンティティを含むリレーションシップをモデル化
  • 階層フロー: ツリー型の接続構造を作成
  • UML インタラクション: メッセージのインターセプトやインタラクションポイントをモデル化

コネクタ間接続の例

コネクタ間接続の作成

方法1: コネクタに向かって描画

  1. コネクタツールを選択(C を押す)
  2. 最初のシェイプ(またはコネクタ)を起点としてクリック
  3. 接続先のコネクタパスに向かってドラッグ
  4. 接続先のコネクタの上にホバーすると、ハイライトされる
  5. リリースして接続

新しいコネクタが接続先のコネクタに接続され、分岐点が作成されます。

方法2: 既存のコネクタを変更

  1. すでに描画されたコネクタを選択
  2. 端点の1つをクリックしてドラッグ
  3. 別のコネクタの上にドラッグ
  4. 接続先がハイライトされたらリリース
  5. 接続ポイントがシェイプからコネクタに移動

コネクタ接続の作成

接続の動作

コネクタを別のコネクタに接続すると:

接続ポイント:

  • コネクタは接続先のパス上の最も近いポイントに接続
  • 接続先が移動または変更されると、接続ポイントも調整
  • 接続先に沿った相対位置が維持される

視覚的なインジケーター:

  • 接続先のコネクタ上に小さな接続マーカーが表示
  • 接続されたコネクタの端点がこのマーカーにスナップ
  • 接続先のコネクタを移動すると、接続されたすべてのコネクタが更新

接続ポイントの移動

コネクタが別のコネクタに接続する位置を調整するには:

  1. 接続されたコネクタを選択
  2. 接続されている端点をクリックしてドラッグ
  3. 接続先のコネクタパスに沿ってスライド
  4. 希望の位置でリリース

接続ポイントはパスに沿ってスライドしますが、接続は維持されます。

コネクタの切断

コネクタ間接続を解除するには:

  1. 接続されたコネクタを選択
  2. その端点を接続先のコネクタから離れる方向にドラッグ
  3. シェイプに接続するか、未接続のままにする
  4. コネクタが独立する

代替方法:

  • 接続されたコネクタを完全に削除
  • 接続直後に取り消しを使用

ユースケース

フローのアノテーション

フロー内の特定のポイントにメモやコメントを追加:

[Start] ──────────────→ [End]
              ↓
         [Note: "Critical step"]

メモのコネクタがメインフローの中間点に接続します。

デシジョンツリー

多方向の分岐を作成:

[Decision]
     ↓
     ├──→ [Option A]
     ├──→ [Option B]
     └──→ [Option C]

各分岐コネクタがメインコネクタの幹に接続します。

UML シーケンス図

メッセージの戻りや割り込みをモデル化:

Object A ─────message────→ Object B
            ↑
            └──return

戻りメッセージが元のメッセージコネクタに接続します。

ネットワーク図

ネットワーク接続に沿ったタップやモニタリングポイントを表示:

[Router] ─────────────→ [Switch]
            ↓
        [Monitor]

モニタータップコネクタがメインネットワークリンクに接続します。

ユースケースギャラリー

接続されたコネクタのスタイリング

接続されたコネクタは接続先とは異なるスタイルを設定できます:

  • 異なる色: プライマリ接続とセカンダリ接続を区別
  • 異なる矢印: リレーションシップの方向やタイプを表示
  • 異なる破線パターン: オプションと必須の分岐を示す
  • 異なる太さ: より太い線でプライマリフローを強調

この視覚的な差別化により、複雑なダイアグラムの理解が容易になります。

屈折点との組み合わせ

他のコネクタに接続するコネクタに屈折点を追加できます:

  1. コネクタを接続先のコネクタに接続
  2. 接続されたコネクタをダブルクリックして屈折点を追加
  3. 必要に応じて接続されたコネクタをルーティング
  4. 片方の端がコネクタに接続していても、屈折点は通常通り機能

これにより、複雑なルーティングシナリオを完全に制御できます。

制限事項

  • パフォーマンス: 非常に多くのコネクタ間接続(50以上)はレンダリングを遅くする場合がある
  • 循環依存: ループの作成を避ける(コネクタ A → コネクタ B → コネクタ A)
  • エクスポート互換性: 一部のエクスポート形式ではコネクタ間のリレーションシップが保持されない場合がある
  • 接続の安定性: シェイプを急速に移動すると接続ポイントがずれる場合がある

ヒント

  1. 明確さのために使用: ダイアグラムをより明確にする場合にのみコネクタ間接続を使用
  2. 深さを制限: コネクタからコネクタへのコネクタへの接続(3レベル深い)は避ける
  3. スタイルを区別: 接続されたコネクタをメインコネクタとは視覚的に異なるものに
  4. 接続ポイントにラベル付け: 接続ポイントの近くにテキストを追加してリレーションシップを説明
  5. エクスポートをテスト: 必要に応じてコネクタ間接続がエクスポート後も維持されるか確認

代替アプローチ

よりシンプルな代替手段がうまく機能する場合もあります:

コネクタ間接続の代わりに:

  • 分岐点にシェイプを追加
  • 1つのシェイプから複数のコネクタを使用
  • コネクタに直接テキストアノテーションを追加
  • 明示的な結合ポイントとしてジャンクションシェイプ(小さな円や点)を使用

コネクタ間接続が過度に複雑に感じられる場合は、これらの代替手段を検討してください。

技術的な補足

コネクタ間接続は以下の仕組みで動作します:

  1. 接続先のコネクタパス上の最近点を計算
  2. パラメトリック接続(パスに沿った割合)を作成
  3. 接続先が移動すると接続ポイントを再計算
  4. 接続先に沿った相対位置を維持

これにより、ダイアグラムが変更されても接続が維持されます。

関連トピック