Add several high level tests to demonstrate for edge overlap on shape.
The "vacation request from bonita" also shows the behavior.
Screenshots
Info: first screenshot is the rendering prior this PR
svg
bpmn
Notes
Some overlap still remain. This PR only avoid overlap when the original edge should have been horizontal.
For instance, when involving Bottom Left to Top Right (waypoints-avoid-edge-overlap-03-elements_in_front.bpmn.xml test diagram)
Cycle Top Right to Bottom Left neither (waypoints-positions-cycle_02_gateways_in_cycle.bpmn.xml)
Refactoring needed
This PR requires refactoring as the WaypointsComputer manages too much things (both positioning and actual points computation) and contains duplications.
I suggest to do the refactoring in a dedicated PR to avoid introducing too much changes here.
Add several high level tests to demonstrate for edge overlap on shape. The "vacation request from bonita" also shows the behavior.
Screenshots
Info: first screenshot is the rendering prior this PR
svg
bpmn
Notes
Some overlap still remain. This PR only avoid overlap when the original edge should have been horizontal.
For instance, when involving Bottom Left to Top Right (waypoints-avoid-edge-overlap-03-elements_in_front.bpmn.xml test diagram)
Cycle Top Right to Bottom Left neither (waypoints-positions-cycle_02_gateways_in_cycle.bpmn.xml)
Refactoring needed
This PR requires refactoring as the
WaypointsComputer
manages too much things (both positioning and actual points computation) and contains duplications. I suggest to do the refactoring in a dedicated PR to avoid introducing too much changes here.