Joints

如果有两个或者更多的边共享了一个节点的起点(不仅仅指一个方向)它们会在路径的某一处分叉;同样,如果一个或者多个边共享了一个节点的终点,那么它们会在某个地方汇合。

  1. [ Potsdam ], [ Mannheim ]
  2. --> { end: back,0; }
  3. [ Weimar ]
  4. --> { start: front,0; } [ Finsterwalde ], [ Aachen ]

Joints - 图1

  1. +----------+ +--------+ +--------------+
  2. | Mannheim | ------+-> | Weimar | -+-----> | Finsterwalde |
  3. +----------+ | +--------+ | +--------------+
  4. | |
  5. | |
  6. | |
  7. +----------+ | | +--------------+
  8. | Potsdam | ------+ +-----> | Aachen |
  9. +----------+ +--------------+

这个机制可以和边的标签一起使用:

  1. [ Jena ]
  2. -- train --> { start: front, 0; }
  3. [ Augsburg ], [ Ulm ]
  4. [ Jena ] -- car --> { start: front, 0; } [ Plauen ]

Joints - 图2

  1. +------+ train +----------+
  2. | Jena | ------+----------> | Ulm |
  3. +------+ | +----------+
  4. | train +----------+
  5. +----------> | Augsburg |
  6. | +----------+
  7. | car +----------+
  8. +----------> | Plauen |
  9. +----------+