eclipse layout kernel · anatomy of elk editor algorithms kgraph core . mini tutorial 9 . 10 using...
TRANSCRIPT
Eclipse Layout Kernel ELK
Christoph Daniel Schulze Kiel University
Jaafar Bouayad Atos
Introducing the
Introduction
3
Introduction
4
Introduction
5
…developing
…moving things around
Source: Klauske, Dziobek (2010)
70% 30%
Time developers spend…
6
…selecting things
…moving things around
40% 60%
Time developers spend…
7
Introduction
Why not let
Your Computer move things instead ?
Easy Hard
Layout Whistling
8
Anatomy of ELK
Editor Algorithms
KGraph
Core
Mini Tutorial
9
10
Using ELK
11
1 - Install
GMF Support Graphviz Support
Core
OGDF Support Graphiti Support
12
Using ELK
13
2 - Connect
14
2 - Connect
Core IDiagramLayoutManager
buildLayoutGraph(…)
applyLayout(…)
15
2 - Connect
KNode
KEdge
KPort KLabel
KShapeLayout
KEdgeLayout
16
Using ELK
17
3 - Configure
String
T
T
id
value
default
KShapeLayout
KEdgeLayout
KLayoutData
IProperty<T>
18
Using ELK
Case Studies
19
20
ELK as a user in Capella
21
Graphical representation of a semantic property
in flowports
on the left
out flowports
on the right
22
Programmatic Configuration
23
Internal Block Diagram layout in Papyrus
24
Change the direction
25
Internal Block Diagram layout in Papyrus (down direction)
26
Complex diagram layout
edges of
initial and final states
directed to the right
other edges
directed downward
27
Multiple layout runs
28
State Machine Diagram layout in Papyrus
29
State Machine Diagram layout in Papyrus (slow motion)
Conclusion
30
31
What’s next ?
33