borkdominik / bigUML

A UML web modeling tool based on GLSP, distributed via a VS Code extension.
MIT License
30 stars 5 forks source link

Libavoid Router #123

Closed Aksem closed 4 months ago

Aksem commented 11 months ago

Status update: it works on top of the actual master branch, but there are still incorrect routes. The first reason was the integration of libavoid in sprotty, the same functionality in both conflicted a bit, but it is solved now. The current problem is that one method is private in the C++ API of libavoid, and the only possible solution is very inoptimal(elements need to be recreated). I'm working on making this method public and then updating libavoid-js and sprotty-routing-libavoid. Issue in libavoid repo: https://github.com/Aksem/adaptagrams/issues/8

Aksem commented 11 months ago

Another update: beta versions of libavoid-js and sprotty-routing-libavoid were released, updated in bigUML and tested. All relations in the class diagram are routed now by the libavoid router. The current version is available for testing by others; feedback is appreciated. Known problems:

  1. Edges that are configured to be polyline(=direct line from element to element) are orthogonal. UPDATE: fixed
  2. Edges from/to nested elements like packages in the class diagram example are not always optimal. It's a known problem of libavoid, and I would keep it for another release.
haydar-metin commented 11 months ago

@Aksem thank you very much! I will test / try it out soon.

haydar-metin commented 5 months ago

Will be implemented in advanced model engineering summer term 2024. Thanks!