23
a split&push approach to 3D orthogonal drawings giuseppe di battista univ. rome III maurizio patrignani univ. rome III francesco vargiu aipa

a split&push approach to 3D orthogonal drawings

  • Upload
    clay

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

a split&push approach to 3D orthogonal drawings. giuseppe di battista univ. rome III maurizio patrignani univ. rome III francesco vargiu aipa. drawing process sketch. starting drawing: all vertices have the same coordinates. a split is performed and one vertex is pushed apart. - PowerPoint PPT Presentation

Citation preview

Page 1: a split&push approach to  3D orthogonal drawings

a split&push approach to 3D orthogonal drawings

giuseppe di battistauniv. rome III

maurizio patrignaniuniv. rome III

francesco vargiuaipa

Page 2: a split&push approach to  3D orthogonal drawings

drawing process sketch

starting drawing: all vertices have the same coordinates

a split is performed and one vertex is pushed apart

Page 3: a split&push approach to  3D orthogonal drawings

a new split: a bend is introduced

Page 4: a split&push approach to  3D orthogonal drawings

further splits... ...further bends

Page 5: a split&push approach to  3D orthogonal drawings

a dummy vertex is introduced to signal a vertex-edge overlap

Page 6: a split&push approach to  3D orthogonal drawings

all originalvertices have differentcoordinates now

Page 7: a split&push approach to  3D orthogonal drawings
Page 8: a split&push approach to  3D orthogonal drawings

all vertices (dummy and original) have different coordinates

Page 9: a split&push approach to  3D orthogonal drawings

removing dummy vertices...

…an orthogonal grid drawing is obtained

Page 10: a split&push approach to  3D orthogonal drawings

orthogonal grid drawing• edges are chains of segments parallel to the

axes

01-drawing edges have either length 0 or length 1

no bends allowed!

0-drawing: trivial 01-drawing such that edges have length 0 and all vertices have the same coordinates

1-drawing: edges have length 1 and vertices have distinct coordinates

• vertices and bends have integer coordinates

vertices, edges, andbends may overlap!

Page 11: a split&push approach to  3D orthogonal drawings

general strategy

input: graph G0 of max deg 6output: 1-drawing of a subdivision

of G0

input: graph G0 of max deg 6output: 1-drawing of a subdivision

of G0

at each step new dummy vertices are introduced

the vertices of G0 are called original vertices

four steps

vertex scatteringdirection distributionvertex-edge overlap removalcrossing removal

we consider subsequent subdivisions of G0

Page 12: a split&push approach to  3D orthogonal drawings

vertex scatteringdirection distributionvertex-edge overlap removalcrossing removal

starting from a 0-drawing of G0, construct a 01-drawing of a subdivision G1 of G0 such that:

the original vertices have different coordinatesall planar dummy paths are not self intersecting

after this step dummy vertices may still overlap both with dummy and with original vertices

scattered 01-drawingscattered 01-drawing

forbiddenconfiguration

Page 13: a split&push approach to  3D orthogonal drawings

vertex scatteringdirection distributionvertex-edge overlap removalcrossing removal

construct a 01-drawing of a subdivision G2 of G1 such that:

for each original vertex v, v and all its adjacent vertices have different coordinates

after this step the edges incident on v “leave” v with different directions

direction-consistent 01-drawing

direction-consistent 01-drawing

v

v

Page 14: a split&push approach to  3D orthogonal drawings

vertex scatteringdirection distributionvertex-edge overlap removalcrossing removal

construct a 01-drawing of a subdivision G3 of G2 such that:

for each original vertex v, no dummy vertex has the same coordinates of v

after this step the original vertices do not “collide” with other vertices

vertex-edge-consistent 01-drawing

vertex-edge-consistent 01-drawing

v v

Page 15: a split&push approach to  3D orthogonal drawings

vertex scatteringdirection distributionvertex-edge overlap removalcrossing removal

construct a 1-drawing of a subdivision G4 of G3

after this step all vertices, both original and dummy, have different coordinates

from the 1-drawing of G4 a 3D orthogonal drawing of G0 is easily obtained by removing dummy vertices

Page 16: a split&push approach to  3D orthogonal drawings

d

split

insertion of a new plane perpendicular to d

black vertices arepushed to the new plane

little cubes are dummy vertices inserted by the split

several degrees of freedom

d

Page 17: a split&push approach to  3D orthogonal drawings

split parameter < d, P, , >

d directionP plane perpendicular to d maps a vertex on P to a boolean maps an edge (u,v) such that (u) != (v)

and such that u and v have different coordinates to a boolean

d directionP plane perpendicular to d maps a vertex on P to a boolean maps an edge (u,v) such that (u) != (v)

and such that u and v have different coordinates to a boolean

push in the d direction all vertices in the open half space determined by P and d

insert a dummy vertex in each edge (u,v) that becomes slant, and place it on the new plane if (u,v) = true, in the old plane otherwise

for each edge (u,v) that becomes 2 units long, put a dummy node in the middle

push in the d direction all vertices on P with = true

Page 18: a split&push approach to  3D orthogonal drawings

feasibility of the approach

theoremfor all the following tasks there always exists a

sequence of splits that “does the job”

1. obtain a scattered 01-drawing of a subdivision G1 of G0 from a 0-drawing of G0

2. obtain a direction-consistent 01-drawing of a subdivision G2 of G1 from a scattered 01-drawing of G1

3. obtain a vertex-edge-consistent 01-drawing of a subdivision G3 of G2 from a direction-consistent 01-drawing of G2

4. obtain a 1-drawing of a subdivision G4 of G3 from a vertex-edge-consistent 01-drawing of G3

Page 19: a split&push approach to  3D orthogonal drawings

sketch of proof

3. obtain a vertex-edge-consistent 01-drawing of a subdivision G3 of G2 from a direction-consistent 01-drawing of G2

split 1

split 2

split 3

split 1

split 2

Page 20: a split&push approach to  3D orthogonal drawings

activeboundary

reduce-forks algorithman instance of the proposed

methodology

select two original vertices u and v with the same coordinates

separate them selecting a split operation that introduces “a few” forks

fork two adjacent

edges both cut by a split

1. vertex scattering

heuristic if a boundary active black (red) vertex exists, color

black (red) one free vertex adjacent to itelse if an active black (red) exists, color black (red)

one free vertex adjacent to itelse color black or red (random) a random free vertex

heuristic if a boundary active black (red) vertex exists, color

black (red) one free vertex adjacent to itelse if an active black (red) exists, color black (red)

one free vertex adjacent to itelse color black or red (random) a random free vertex

Page 21: a split&push approach to  3D orthogonal drawings

reduce-forks algorithm

2. direction distribution

3. vertex-edge overlap removal

4. crossing removal

with a path retrieval strategy}

example: 3. vertex-edge overlap removal

follow the path until an edge leaving the plane is found or an original vertex is reached

starting configuration

without a path retrieval strategy

with a path retrieval strategy

Page 22: a split&push approach to  3D orthogonal drawings

experimental comparison

no algorithm can be considered “the best”

there is a trade-off between number of bends and volume occupation

more:

interactive reduce-forks three-bends are more effective with respect to the average number of bends

compact slice draw in the smallest volume

compact interactive reduce-forks perform better with respect to edge length

slice three-bends interactive compact need the smallest computation time

Page 23: a split&push approach to  3D orthogonal drawings

conclusions and open problems

devise new algorithms and heuristics (alternative to reduce-forks) within the described paradigm

explore the trade off, put in evidence by the experiments, between number of bends and volume

measure the impact of bend-stretching (or possibly other post-processing techniques) on the performance of the different algorithms

devise new quality parameters to better study the human perception of “nice drawing” in three dimensions