mondrian overview 2007-11-06

39
Painting objects with Mondrian Tudor Gîrba www.tudorgirba.com

Upload: tudor-girba

Post on 27-May-2015

1.965 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Mondrian Overview 2007-11-06

Painting objects with Mondrian

Tudor Gîrbawww.tudorgirba.com

Page 2: Mondrian Overview 2007-11-06

Mondrian is created by

Michael Meyer and Tudor Gîrba

Page 3: Mondrian Overview 2007-11-06

Mondrian is about

visualization

Page 4: Mondrian Overview 2007-11-06

A picture is worth

a thousand words

Page 5: Mondrian Overview 2007-11-06
Page 6: Mondrian Overview 2007-11-06

UML took it literally :)

Page 7: Mondrian Overview 2007-11-06

70%ofour

sensorsarededicatedto

vision

Page 8: Mondrian Overview 2007-11-06

How many groups do you see?

Page 9: Mondrian Overview 2007-11-06

How many groups do you see?

Page 10: Mondrian Overview 2007-11-06

How many groups do you see?

Page 11: Mondrian Overview 2007-11-06

How many groups do you see?

Page 12: Mondrian Overview 2007-11-06

70%ofour

sensorsarededicatedto

vision

Page 13: Mondrian Overview 2007-11-06

A picture is worth

a thousand words

Page 14: Mondrian Overview 2007-11-06

Example: What is ?

Page 15: Mondrian Overview 2007-11-06
Page 16: Mondrian Overview 2007-11-06
Page 17: Mondrian Overview 2007-11-06
Page 18: Mondrian Overview 2007-11-06
Page 19: Mondrian Overview 2007-11-06
Page 20: Mondrian Overview 2007-11-06

digraph classGraph {A [ shape=polygon, width = 6 ... ]B [ shape=polygon, width = 5 ... ]...A -> BC -> D...

}

What we have: Graphviz

Page 21: Mondrian Overview 2007-11-06

What we have: CodeCrawler

Node

ClassNode

Edge

InheritanceEdge

Page 22: Mondrian Overview 2007-11-06

Mondrian

Page 23: Mondrian Overview 2007-11-06

What we want

Scripting

Instance based

Any data model

Close to data

Interaction

Page 24: Mondrian Overview 2007-11-06

What we want

Scripting

Instance based

Any data model

Close to data

Interaction

Page 25: Mondrian Overview 2007-11-06
Page 26: Mondrian Overview 2007-11-06
Page 27: Mondrian Overview 2007-11-06

Composition with Red, Yellow and Blue Piet Mondrian (1921)

Page 28: Mondrian Overview 2007-11-06

Mondrian is about

visualization

Page 29: Mondrian Overview 2007-11-06

The simplest script is an empty view

view := ViewRenderer new.view open.

Page 30: Mondrian Overview 2007-11-06

View = nodes, edges, layout

view := ViewRenderer new.

view nodes: classes.

view edges: classes

from: [:each | each superclass]

to: [:each | each].

view treeLayout.

view open.

Page 31: Mondrian Overview 2007-11-06

Shapes are responsible for drawing

view := ViewRenderer new.

view borderedRectangleShape height: [:each | each numberOfMethods].

view nodes: classes.view edges: classes from: [:each | each superclass] to: [:each | each].view treeLayout.view open.

Page 32: Mondrian Overview 2007-11-06

Blocks can be replaced by symbols

view := ViewRenderer new.view borderedRectangleShape

height: #numberOfMethods.

view nodes: classes.

view edgesFrom: #superclass.

view treeLayout.view open.

Page 33: Mondrian Overview 2007-11-06

Nesting is done through blocks

view := ViewRenderer new.view borderedRectangleShape.

view nodes: classes forEach: [:each |

view nodes: each methods.

view gridLayout].

view edgesFrom: #superclass.view treeLayout.view open.

Page 34: Mondrian Overview 2007-11-06

Mondrian is about

visualizations

Page 35: Mondrian Overview 2007-11-06

Mondrian is about

interactive visualization

Page 36: Mondrian Overview 2007-11-06

Interaction is scriptable, too

view := ViewRenderer new.view2 := ViewRenderer new.

view interaction onSelect: [:each | each viewOn: view2].

view interaction popupView: [:each :aView | each viewOn: aView].

...view open.view2 open.

Page 37: Mondrian Overview 2007-11-06

Mondrian is a domain specific language

view := ViewRenderer new.view borderedRectangleShape.view interaction popupView: [:each :aView | each viewOn: aView].view nodes: classes forEach: [:each |

view nodes: each methods.view gridLayout

].view edgesFrom: #superclass.view treeLayout.view open.

Page 38: Mondrian Overview 2007-11-06

Mondrian

Tudor Gîrbawww.tudorgirba.com