a split&push approach to 3d orthogonal drawings
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 PresentationTRANSCRIPT
![Page 1: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/3.jpg)
a new split: a bend is introduced
![Page 4: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/4.jpg)
further splits... ...further bends
![Page 5: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/5.jpg)
a dummy vertex is introduced to signal a vertex-edge overlap
![Page 6: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/6.jpg)
all originalvertices have differentcoordinates now
![Page 7: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/7.jpg)
![Page 8: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/8.jpg)
all vertices (dummy and original) have different coordinates
![Page 9: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/9.jpg)
removing dummy vertices...
…an orthogonal grid drawing is obtained
![Page 10: a split&push approach to 3D orthogonal drawings](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/18.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/19.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/22.jpg)
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](https://reader036.vdocuments.net/reader036/viewer/2022062315/56814f7f550346895dbd31a6/html5/thumbnails/23.jpg)
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