R107 - modelint/flatland-model-diagram-editor GitHub Wiki

R107 / 1:Mc

Bending Binary Connector takes zero, one or many Path

Path is taken by exactly one Bending Binary Connector]


In the simplest and most common case, a Bending Binary Connector turns at only one point forming a single Corner. In this case there is no need for the user to specify a Path as the anchor positions on each Stem establish the single Corner location. You just find the intersection of the lines projecting from each Stem.

When more than one Corner is desired, the user must choose where to place each pair of Corners. Consider two Nodes in the same Row where the Connector will be drawn between the top face of the T node to the top face of the P node. Each Corner will lie somewhere above each Node on the same y coordinate, since we want a straight line. But where is the y coordinate? One Row above? Two Rows above? It’s up the the user to decide.

A Path represents both the choice of a Row or Column (Lane) and the alignment within that Lane.

The number of Paths that must be specified is equal to one less than the number of desired Corners in the Bending Binary Connector. So, zero in the case of a single Corner as previously discussed and then incrementing from there.

A Path is defined specific to its Bending Binary Connector. A variety of constraints will prevent two Paths from different Connectors from overlapping, such as the enforcing the uniqueness of Corner coordinates.