camunda / camunda-modeler

An integrated modeling solution for BPMN, DMN and Forms based on bpmn.io.
https://camunda.com/products/modeler
MIT License
1.49k stars 476 forks source link

Additional node distribution features #1057

Open rvaneerd opened 5 years ago

rvaneerd commented 5 years ago

Is your feature request related to a problem? Please describe.

Distribute elements should be smart about the distances between elements. If there exits a common distance already, it should take that into account. This is very much related to the fact that nicely looking diagrams are usually the ones that have equal distances between elements.

Describe the solution you'd like

Describe alternatives you've considered

Additional context

This is not how usual distribution tools work in other editors. It would clearly help the visual soundness of diagrams though.


Original Issue

Hi,

I am aware of the node distribution functions available in the toolbar of Camunda Modeler. I know they will distribute the selected nodes evenly between the outer nodes in either horizontal / vertical orientation. However, I would like to have two additional ones which will distribute the selected nodes according to a (configurable?) default distance.

That way I can organize the layout of my process models to they're more easy to read.

I have no preference whether this would be build into the main code or provided as a plugin.

Hope this helps to further improve the product.

Regards, Rob.

rvaneerd commented 5 years ago

I think, the following screenshot shows what I'm after ;-) image

Regards, Rob.

nikku commented 5 years ago

This is very much related to the behavior how aligning elements work (cf. https://github.com/camunda/camunda-modeler/issues/1056#issuecomment-444862045).

These tools should help you create better diagrams, in that sense one could argue that what you're after should be the expected behavior. (Randomly distributing elements is not what users usually desire).

nikku commented 5 years ago

I updated the issue according to your input. Thanks for taking the time to clarify!