Top Banner
Eclipse Layout Kernel ELK Christoph Daniel Schulze Kiel University Jaafar Bouayad Atos Introducing the
33

Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

Jun 26, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

Eclipse Layout Kernel ELK

Christoph Daniel Schulze Kiel University

Jaafar Bouayad Atos

Introducing the

Page 2: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

Introduction

Page 3: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

3

Introduction

Page 4: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

4

Introduction

Page 5: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

5

…developing

…moving things around

Source: Klauske, Dziobek (2010)

70% 30%

Time developers spend…

Page 6: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

6

…selecting things

…moving things around

40% 60%

Time developers spend…

Page 7: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

7

Introduction

Why not let

Your Computer move things instead ?

Easy Hard

Layout Whistling

Page 8: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

8

Anatomy of ELK

Editor Algorithms

KGraph

Core

Page 9: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

Mini Tutorial

9

Page 10: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

10

Using ELK

Page 11: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

11

1 - Install

GMF Support Graphviz Support

Core

OGDF Support Graphiti Support

Page 12: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

12

Using ELK

Page 13: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

13

2 - Connect

Page 14: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

14

2 - Connect

Core IDiagramLayoutManager

buildLayoutGraph(…)

applyLayout(…)

Page 15: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

15

2 - Connect

KNode

KEdge

KPort KLabel

KShapeLayout

KEdgeLayout

Page 16: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

16

Using ELK

Page 17: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

17

3 - Configure

String

T

T

id

value

default

KShapeLayout

KEdgeLayout

KLayoutData

IProperty<T>

Page 18: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

18

Using ELK

Page 19: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

Case Studies

19

Page 20: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

20

ELK as a user in Capella

Page 21: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

21

Graphical representation of a semantic property

in flowports

on the left

out flowports

on the right

Page 22: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

22

Programmatic Configuration

Page 23: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

23

Internal Block Diagram layout in Papyrus

Page 24: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

24

Change the direction

Page 25: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

25

Internal Block Diagram layout in Papyrus (down direction)

Page 26: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

26

Complex diagram layout

edges of

initial and final states

directed to the right

other edges

directed downward

Page 27: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

27

Multiple layout runs

Page 28: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

28

State Machine Diagram layout in Papyrus

Page 29: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

29

State Machine Diagram layout in Papyrus (slow motion)

Page 30: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

Conclusion

30

Page 31: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

31

What’s next ?

Page 32: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support
Page 33: Eclipse Layout Kernel · Anatomy of ELK Editor Algorithms KGraph Core . Mini Tutorial 9 . 10 Using ELK . 11 1 - Install GMF Support Graphviz Support Core Graphiti Support OGDF Support

33