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

Slides:



Advertisements
Similar presentations
Great Theoretical Ideas in Computer Science for Some.
Advertisements

Two Segments Intersect?
Planar graphs Algorithms and Networks. Planar graphs2 Can be drawn on the plane without crossings Plane graph: planar graph, given together with an embedding.
Bart Jansen 1.  Problem definition  Instance: Connected graph G, positive integer k  Question: Is there a spanning tree for G with at least k leaves?
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 – CHAPTER 4 GRAPHS 1.
Planar Orientations Chapter 4 ( ) in the book Written By: Tomer Heber.
Introduction to Graphs
Convex drawing chapter 5 Ingeborg Groeneweg. Summery What is convex drawing What is convex drawing Some definitions Some definitions Testing convexity.
Motion Planning for Point Robots CS 659 Kris Hauser.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
NP-Completeness: Reductions
Visibility Graphs May Shmuel Wimer Bar-Ilan Univ., Eng. Faculty Technion, EE Faculty.
Polynomial Time Approximation Schemes Presented By: Leonid Barenboim Roee Weisbert.
Seminar Graph Drawing H : Introduction to Graph Drawing Jesper Nederlof Roeland Luitwieler.
Overlay of Two Subdivisions
Classes of Polygons Planar polygons Non-planar polygons Simple
1 Monotone Drawings of Graphs Thanks to Peter Eades Patrizio Angelini, Enrico Colasante, Giuseppe Di Battista, Fabrizio Frati,
Applied Combinatorics, 4th Ed. Alan Tucker
On the complexity of orthogonal compaction maurizio patrignani univ. rome III.
Intersections. Intersection Problem 3 Intersection Detection: Given two geometric objects, do they intersect? Intersection detection (test) is frequently.
Graph Drawing Introduction 2005/2006. Graph Drawing: Introduction2 Contents Applications of graph drawing Planar graphs: some theory Different types of.
Chapter 9 Graph algorithms. Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
Tucker, Applied Combinatorics, Section 1.4, prepared by Patti Bodkin
CSE 6405 Graph Drawing Text Books T. Nishizeki and M. S. Rahman, Planar Graph Drawing, World Scientific, Singapore, G. Di Battista,
Point Location Computational Geometry, WS 2007/08 Lecture 5 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für.
Advanced Visualization Techniques
Chapter 4: Straight Line Drawing Ronald Kieft. Contents Introduction Algorithm 1: Shift Method Algorithm 2: Realizer Method Other parts of chapter 4 Questions?
Lecture 6: Point Location Computational Geometry Prof. Dr. Th. Ottmann 1 Point Location 1.Trapezoidal decomposition. 2.A search structure. 3.Randomized,
Complexity results for three-dimensional orthogonal graph drawing maurizio “titto” patrignani third university of rome graph drawing 2005.
The complexity of the matching-cut problem Maurizio Patrignani & Maurizio Pizzonia Third University of Rome.
 Jim has six children.  Chris fights with Bob,Faye, and Eve all the time; Eve fights (besides with Chris) with Al and Di all the time; and Al and Bob.
CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science.
Orthogonal Drawings of Series-Parallel Graphs Joint work with Xiao Zhou by Tohoku University Takao Nishizeki.
Crossing Minimisation (1) Ronald Kieft. Global contents Specific 2-layer Crossing Minimisation techniques After the break, by Johan Crossing Minimisation.
1 Orthogonal Drawing (continued)  Sections 8.3 – 8.5 from the book  Bert Spaan.
Advanced Seminar on Graph Drawing – Planar Orientations Olga Maksin Victor Makarenkov Department of Computer Science. Ben-Gurion University of the Negev.
Fan-planar Graphs: Combinatorial Properties and Complexity results Carla Binucci, Emilio Di Giacomo, Walter Didimo, Fabrizio Montecchiani, Maurizio Patrignani,
Paradigms for Graph Drawing Graph Drawing: Algorithms for the Visualization of Graphs - Chapter 2 Presented by Liana Diesendruck.
A Note on the Self-Similarity of some Orthogonal Drawings Maurizio “Titto” Patrignani Roma Tre University, Italy GD2004 NYC 28 Sept – 2 Oct 2004.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Planar Graphs Graph Coloring
Agenda Review: –Planar Graphs Lecture Content:  Concepts of Trees  Spanning Trees  Binary Trees Exercise.
Complexity results for three-dimensional orthogonal graph drawing maurizio patrignani third university of rome graph drawing dagstuhl
UNC Chapel Hill M. C. Lin Delaunay Triangulations Reading: Chapter 9 of the Textbook Driving Applications –Height Interpolation –Constrained Triangulation.
February 17, 2005Lecture 6: Point Location Point Location (most slides by Sergi Elizalde and David Pritchard)
Visualization of Biological Information with Circular Drawings.
Points, Lines and Rays G4.4M.C1.PO1 I can draw and describe the relationships between points, lines, line segments, rays, and angles including parallelism.
Solid Modeling Dr. Scott Schaefer.
Polygon Triangulation
1 Schnyder’s Method. 2 Motivation Given a planar graph, we want to embed it in a grid We want the grid to be relatively small And we want an efficient.
Beth Tsai Jennifer E. Walter Nancy M. Amato Department of Computer Science Texas A&M University, College Station Distributed Reconfiguration of Metamorphic.
CMPS 3130/6130 Computational Geometry Spring 2017
Computing NodeTrix Representations of Clustered Graphs
Algorithms and Networks
Great Theoretical Ideas In Computer Science
Geometric Transformations
Computational Geometry
Graph theory Definitions Trees, cycles, directed graphs.
Geometric Graphs and Quasi-Planar Graphs
Mean Shift Segmentation
Query Processing in Databases Dr. M. Gavrilova
Planarity Testing.
Graph Theory Graph Colorings.
Depth Estimation via Sampling
Graphs Chapter 13.
SPQR Tree.
V12 Menger’s theorem Borrowing terminology from operations research
Overlay of Two Subdivisions
Agenda Review Lecture Content: Shortest Path Algorithm
Chapter 9 Graph algorithms
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 starting drawing: all vertices have the same coordinates a split is performed and one vertex is pushed apart

a new split: a bend is introduced

further splits......further bends

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

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, and bends may overlap!

general strategy input:graph G 0 of max deg 6 output:1-drawing of a subdivision of G 0 input:graph G 0 of max deg 6 output:1-drawing of a subdivision of G 0 at each step new dummy vertices are introduced the vertices of G 0 are called original vertices four steps vertex scattering direction distribution vertex-edge overlap removal crossing removal we consider subsequent subdivisions of G 0

vertex scattering direction distribution vertex-edge overlap removal crossing removal starting from a 0-drawing of G 0, construct a 01-drawing of a subdivision G 1 of G 0 such that: the original vertices have different coordinates all planar dummy paths are not self intersecting after this step dummy vertices may still overlap both with dummy and with original vertices scattered 01-drawing forbidden configuration

vertex scattering direction distribution vertex-edge overlap removal crossing removal construct a 01-drawing of a subdivision G 2 of G 1 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

vertex scattering direction distribution vertex-edge overlap removal crossing removal construct a 01-drawing of a subdivision G 3 of G 2 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

vertex scattering direction distribution vertex-edge overlap removal crossing removal construct a 1-drawing of a subdivision G 4 of G 3 after this step all vertices, both original and dummy, have different coordinates from the 1-drawing of G 4 a 3D orthogonal drawing of G 0 is easily obtained by removing dummy vertices

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 d

split parameter d direction P 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 direction P 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

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 G 1 of G 0 from a 0-drawing of G 0 2. obtain a direction-consistent 01-drawing of a subdivision G 2 of G 1 from a scattered 01- drawing of G 1 3. obtain a vertex-edge-consistent 01-drawing of a subdivision G 3 of G 2 from a direction- consistent 01-drawing of G 2 4. obtain a 1-drawing of a subdivision G 4 of G 3 from a vertex-edge-consistent 01-drawing of G 3

sketch of proof 3. obtain a vertex-edge-consistent 01-drawing of a subdivision G 3 of G 2 from a direction- consistent 01-drawing of G 2 split 1 split 2 split 3 split 1 split 2

active boundary reduce-forks algorithm an 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 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 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

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

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

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