Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
borderStyledashed
titleProject OverviewborderStyledashed

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. (pdfbib)
  • 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. (pdfbib)
  • 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. (pdfbib)
  • 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)

...

  1. 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.
  2. 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
languagejava
themeEclipselanguagejava
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
languagejava
themeEclipselanguagejava
KShapeLayout nodeLayout = parentNode.getData(KShapeLayout.class);
boolean isInteractive = nodeLayout.getProperty(LayoutOptions.INTERACTIVE);

...