1 / 23

# a split&push approach to 3D orthogonal drawings - PowerPoint PPT Presentation

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.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' a split&push approach to 3D orthogonal drawings' - clay

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

3D orthogonal drawings

giuseppe di battista

univ. rome III

maurizio patrignani

univ. rome III

francesco vargiu

aipa

starting drawing: all vertices have the same coordinates

a split is performed and one vertex is pushed apart

is introduced to signal a vertex-edge overlap

vertices have different

coordinates now

(dummy and

original) have different coordinates

…an orthogonal grid drawing is obtained

• vertices and bends have integer coordinates

• vertices, edges, and

• bends may overlap!

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

direction distribution

vertex-edge overlap removal

crossing removal

general strategy

input: graph G0 of max deg 6

output: 1-drawing of a subdivision

of G0

we consider subsequent subdivisions of G0

at each step new dummy vertices are introduced

the vertices of G0 are called original vertices

four steps

direction distribution

vertex-edge overlap removal

crossing 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 coordinates

• all planar dummy paths are not self intersecting

forbidden

configuration

scattered 01-drawing

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

direction distribution

vertex-edge overlap removal

crossing 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

v

v

direction-consistent

01-drawing

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

v

vertex scattering

direction distribution

vertex-edge overlap removal

crossing 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

vertex-edge-consistent

01-drawing

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

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

vertex scattering

direction distribution

vertex-edge overlap removal

crossing removal

construct a 1-drawing of a subdivision G4 of G3

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

d

split

insertion of a new plane perpendicular to d

black vertices are

pushed to the new plane

little cubes are dummy vertices inserted by the split

several degrees of freedom

split parameter < d, P, f, r >

d direction

P plane perpendicular to d

f maps a vertex on P to a boolean

r maps an edge (u,v) such that f(u) != f(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

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

insert a dummy vertex in each edge (u,v) that becomes slant, and place it on the new plane if r(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

theorem

for 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

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 1

split 2

split 3

split 2

active

reduce-forks algorithman instance of the proposed methodology

fork

two adjacent edges both cut by a split

1.vertex scattering

select two original vertices u and v with the same coordinates

separate them selecting a split operation that introduces

“a few” forks

• heuristic

• if a boundary active black (red) vertex exists, color black (red) one free vertex adjacent to it

• else if an active black (red) exists, color black (red) one free vertex adjacent to it

• else color black or red (random) a random free vertex

with a path retrieval strategy

2.direction distribution

3.vertex-edge overlap removal

4.crossing removal

reduce-forks algorithm

example: 3. vertex-edge overlap removal

without a path retrieval strategy

starting configuration

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

with a path retrieval strategy

no algorithm can be considered “the best”

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

more:

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

compactslice draw in the smallest volume

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

slicethree-bends interactive compact need the smallest computation time

• 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