- 2 Interactive Constraint Creation and Application in Automatic Layout (Bachelor/Master)
Evaluate options how to create constraints on the layout like "Node x should be placed at position y" and how to implement this in the current layout algorithms. Assess how such constraints can be persisted within the model.
- 3 Force Based Drawing with Port Constraints (Master)
Develop methods for integrating port constraints in force-based drawing approaches. The resulting node placement shall be evaluated using an edge router such as libavoid on the model library of Ptolemy.
- 3 Combining Forces and Layers (Master)
Design and implement a layout algorithm that combines the force-based and the layer-based approaches. The first three phases of the layer-based approach shall be replaced by a node distribution computed with a force-based approach.
- 1 A (Simple) Edge Router (Bachelor)
Often, people want their nodes to stay in the same place, but have the edges routed somehow. We currently don't have any layout algorithm that can do so. In this assignment, you would implement a simple edge router to solve this.
- 1 Improved Spline Edge Routing (Master)
Our layer-based layout algorithm is capable to route edges as splines. Evaluate the results using state machine diagrams, identify possible improvements and develop solutions to address these.
- 1 Improve and Assess KLay Layered's JUnit Test Environment (Bachelor, Master)
We maintain a variety of JUnit tests to assure our layout algorithm works properly. The environment to execute these tests grew over time and requires a face-lift. The task is to evaluate existing testing frameworks of other projects, find a clean and efficient way to specify and maintain our tests, and update the current implementation.
- 3 Orthogonal "Edge Bundling" (Bachelor, Master)
Implement and evaluate strategies for orthogonal edge bundling within our layer-based layout algorithm.