process-analytics / bpmn-layout-generators

Tools for generating missing BPMNDiagram elements in BPMN files
Apache License 2.0
36 stars 5 forks source link

feat: improve waypoints of edges involving gateways #71

Closed tbouffard closed 3 years ago

tbouffard commented 3 years ago

Ensure use of the bottom edge of the gateway In particular,

tbouffard commented 3 years ago

Evolution of the edge rendering from the previous implementation to the new one

diagram_evolution

Notice that the files were generated prior rebasing the branch of this PR to master (originated from 9139bed0)

The diagram now looks like this. There is an inversion of split gateways but this has no impact on the waypoints

image

tbouffard commented 3 years ago

The new BPMN diagram used in test was invalid: there was a gateway which is both a merge and a split. This made me think that a extra paths were required for the edges. I had first implemented outgoing edges that always started with a short horizontal line, then do a polyline to the target element. This was to ensure there is no overlap with incoming edges.

The test diagram has been updated and looks like the following when passing to bpmn-layout-generator with the extra polyline.

05_test_diagram_updated

I have simplified the edges from split gateways and the layout is now generated as in the following.

06_simplify_waypoints_from_split_gateway

tbouffard commented 3 years ago

⚠️ Not working with a split gateway followed by split gateways like in the following --> #72 should manage it

image