-
Notifications
You must be signed in to change notification settings - Fork 3
Integrate the Eclipse Layout Toolkit (ELK) #158
Comments
Implementation Details and Progress
|
In addition to the ELK integration work. We are also investigating methods for laying out just connections. This would increase the capability and such an algorithm would improve handling of feature groups and potentially connections between connections. |
The currently pushed ELK integration code seems to work really well. However, due to the connection layout issues with relation to feature groups, the code that uses the ELK edge routing has been removed. If the implementation of the connection routing goes well, it will be used. If not, the ELK edge routing code will be used with the caveat that it will not work with feature groups. The connection layout algorithm would also be highly beneficial by allowing the layout of just connections instead. The initial implementation of the algorithm will be designed to layout all connections contained in a diagram element. The reason is that the initial implementation will not handle avoiding overlaps and proper spacing with existing connections. Another reason for the desire for an alternative connection routing mechanism is ELK does not support the concept of having an internal and an external connection point. There are some UI refinements that will be made after the results of the connection layout implementation. |
The connection layout algorithm is promising but there does not appear to be adequate resources to stabilize it. However, there may be a way to support feature groups with ELK. The position selected for elements appear to be deterministic as long as the appropriate properties are specified. Feature group can potentially be represented by simple features which have the appropriate sizing, positions, and spacing. The plan is to make a quick determination about the practicality of this approach and to proceed with implementation if so. |
A separate connection layout option will not be implemented at this time. That is not supported by ELK. |
Integrated ELK. Closes #158. See merge request rsesc/aadl_graphical_editor!21
Some desired capabilities may not be possible with the current version of ELK. Investigation is needed. The desired capabilities are listed below.
Experiments have been conducted with the Eclipse Layout Kernel (ELK) and the results are promising. However, until the integration is completed and further testing has been performed, it remains to be seen exactly how significant an improvement integrating the capability will provide. In any case, it is expected to be a large improvement in the case of laying out the entire diagram. The goal is to focus on the usage of the layered algorithm since that makes the most sense for our use case.
Once that integration is complete. The ELK based implementation will take over the responsibility of the automatic layout. The current option will just relayout the entire diagram. On the UI side, adding additional menu items to customize the layout operation are being considered. These options are TBD and will be limited by ELK restrictions and available resources
The text was updated successfully, but these errors were encountered: