Panel |
---|
borderStyle | dashed |
---|
title | Project Overview | borderStyle | dashed |
---|
|
Related Publications: - Miro Spönemann, Hauke Fuhrmann, and Reinhard von Hanxleden. Automatic Layout of Data Flow Diagrams in KIELER and Ptolemy II. Technical Report 0914, Christian-Albrechts-Universität zu Kiel, Department of Computer Science, 2009. (pdf / bib)
- Hauke Fuhrmann, Miro Spönemann, Michael Matzen, and Reinhard von Hanxleden. Automatic layout and structure-based editing of UML diagrams. In Proceedings of the 1st Workshop on Model Based Engineering for Embedded Systems Design (M-BED'10), Dresden, 2010. (pdf / bib)
- Christian Schneider, Miro Spönemann, and Reinhard von Hanxleden. Transient view generation in Eclipse. In Proceedings of the First Workshop on Academics Modeling with Eclipse, Kgs. Lyngby, Denmark, 2012. (pdf / bib)
- Miro Spönemann, Christoph Daniel Schulze, Christian Motika, Christian Schneider, and Reinhard von Hanxleden. KIELER: Building on Automatic Layout for Pragmatics-Aware Modeling (Showpiece). In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC’13), San Jose, CA, USA, 15–19 September 2013. (pdf / bib)
Related Theses: - Björn Duderstadt, Evolutionary Meta Layout for KIELER, May 2011 (pdf)
|
...
- Install the "KIELER Layout for GMF" feature from our update site, see Downloads
- It includes the Java-based layout algorithms developed in the KLay project.
- Open a diagram and press the layout button or use the shortcut Ctrl+R L.
...
The primary API of KIML is the DiagramLayoutEngine, which is responsible for analyzing diagrams, creating a KGraph structure, configuring and executing the layout algorithms, and writing new position information back to the diagram. It is invoked with
Code Block |
---|
language | java |
---|
theme | Eclipse | language | java |
---|
|
DiagramLayoutEngine.INSTANCE.layout(workbenchPart, diagramPart) |
...
Each layout option that is registered in the extension point needs a corresponding constant in Java code, where the most relevant data is replicated with a Property constant for easy use in the implementation of layout algorithms. KIML comes with a large set of built-in layout options, which are all defined in LayoutOptions. Layout providers can access the layout option values using the IPropertyHolder interface:
Code Block |
---|
language | java |
---|
theme | Eclipse | language | java |
---|
|
KShapeLayout nodeLayout = parentNode.getData(KShapeLayout.class);
boolean isInteractive = nodeLayout.getProperty(LayoutOptions.INTERACTIVE); |
...