A split&push approach to
Download
1 / 23

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


  • 116 Views
  • Uploaded on

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.

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

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


An Image/Link below is provided (as is) to download presentation

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

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
drawing process sketch

starting drawing: all vertices have the same coordinates

a split is performed and one vertex is pushed apart




a dummy vertex

is introduced to signal a vertex-edge overlap


all original

vertices have different

coordinates now


all vertices

(dummy and

original) have different coordinates


removing dummy vertices...

…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


General strategy

vertex scattering

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


vertex scattering

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


vertex scattering

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

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


Split

d

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


feasibility of the approach

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


Sketch of proof
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 1

split 2

split 3

split 2


Reduce forks algorithm an instance of the proposed methodology

boundary

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


experimental comparison

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


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


ad