eclipse / elk

Eclipse Layout Kernel - Automatic layout for Java applications.
https://www.eclipse.org/elk/
Other
258 stars 86 forks source link

NoSuchElementException when using `wrapping.strategy: SINGLE_EDGE` with edge labels #1079

Open Eddykasp opened 1 month ago

Eddykasp commented 1 month ago

When the layered wrapping strategy attemps to make a cut on an edge that also has a label, a NoSuchElementException occurs in the LabelDummySwitcher.

Uncommenting the edge in the linked example leads to the error.

Example in elklive

Expected behavior Wrapping should work properly with edges that have labels too.

soerendomroes commented 1 month ago

If I remember this correctly, the issue should be that the method that executes the cuts only works for "normal" edge dummies and not label dummies.

Eddykasp commented 2 weeks ago

The solution to this problem is to check whether the cut indeces have been placed at label dummy nodes. This is currently not checked and leads to problems during later processors. This branch fixes this issue for the MSDCutIndexHeuristic. This needs to be done for all heuristics for single and multi edge strategies.