Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using...

Post on 26-Jun-2020

19 views 0 download

Transcript of Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using...

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