windrose planarity
play

Windrose Planarity Embedding Graphs with Direction-Constrained - PowerPoint PPT Presentation

Windrose Planarity Embedding Graphs with Direction-Constrained Edges Philipp Kindermann LG Theoretische Informatik FernUniversit at in Hagen Published at SODA16. Joint work with Patrizio Angelini, Giordano Da Lozzo, Giuseppe Di


  1. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 270 ◦ 0 ◦ 90 ◦ 90 ◦ 90 ◦ 180 ◦ 0 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  2. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  3. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ( G , A ) admits angular drawing if: 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  4. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  5. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  6. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  7. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  8. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ⇒ A is angular labeling ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ 90 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  9. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ⇒ A is angular labeling ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ angular labeling A 90 ◦ 90 ◦ ⇒ unique q-constraints Q A 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  10. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ⇒ A is angular labeling ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ angular labeling A 90 ◦ 90 ◦ ⇒ unique q-constraints Q A 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ 270 ◦ 0 ◦ 360 ◦

  11. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ⇒ A is angular labeling ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ angular labeling A 90 ◦ 90 ◦ ⇒ unique q-constraints Q A 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ q-constraints Q 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ + large-angle assignment L 270 ◦ ⇒ unique angular labeling A Q , L 0 ◦ 360 ◦

  12. Angular Drawing Angle categories : 0 ◦ , 90 ◦ , 180 ◦ , 270 ◦ , and 360 ◦ Labeled graph ( G , A ): G plane graph, A labeling of angles Angular drawing : end of segments have slopes ≈ ± 1 ⇒ A is angular labeling ( G , A ) admits angular drawing if: • Vertex condition : sum of angle cat. at vertex is 360 ◦ • Cycle condition : sum of angle cat. at (int.) face of length k is k · 180 ◦ − 360 ◦ 270 ◦ 90 ◦ 180 ◦ angular labeling A 90 ◦ 90 ◦ ⇒ unique q-constraints Q A 0 ◦ 180 ◦ 90 ◦ 0 ◦ 90 ◦ 270 ◦ 90 ◦ q-constraints Q 0 ◦ 180 ◦ 90 ◦ 0 ◦ 180 ◦ + large-angle assignment L 270 ◦ angular drawing ⇒ unique angular labeling A Q , L 0 ◦ = windrose planar drawing ˆ 360 ◦

  13. Triangulated Graphs 0 180 0

  14. Triangulated Graphs 0 180 0

  15. Triangulated Graphs 0 90 90

  16. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories

  17. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face

  18. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face

  19. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face G ↑

  20. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ is acyclic. G ↑

  21. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ is acyclic and has no internal sources or sinks. G ↑ 270 ◦ 270 ◦

  22. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ is acyclic and has no internal sources or sinks. G → 270 ◦ 270 ◦

  23. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ and G → are acyclic and have no internal sources or sinks. G →

  24. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ and G → are acyclic and have no internal sources or sinks. G

  25. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face internally Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ and G → are acyclic and have no internal sources or sinks. G

  26. Triangulated Graphs 0 90 90 • No (int.) > 180 ◦ angle categories • At least one 0 ◦ angle category per (int.) face internally Lemma. Let ( G , A Q ) be a triangulated angular labeled graph. Then, G ↑ and G → are acyclic and have no internal sources or sinks. G What if there are no (int.) 180 ◦ angle categories?

  27. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories?

  28. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? w N w W w S

  29. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? w N w E w W w S

  30. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? G → w N w E w W w S

  31. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates G → w N w E w W w S

  32. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates G → w N 2 w E 8 14 11 4 6 7 10 12 5 9 3 1 w W 13 w S

  33. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates G → w N 2 w E 8 14 11 4 6 7 10 12 5 9 3 1 w W 13 w S 1 3 5 7 9 11 13

  34. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates G ↑ w N w E w W w S 1 3 5 7 9 11 13

  35. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates G ↑ w N w E w W w S 1 3 5 7 9 11 13

  36. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates G ↑ w N 14 w E 13 12 11 10 9 8 7 6 5 4 3 2 w W 1 w S 1 3 5 7 9 11 13

  37. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates G ↑ w N 14 w E 13 12 11 10 9 8 7 6 5 4 3 2 w W 1 w S 1 3 5 7 9 11 13

  38. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates G ↑ w N 14 w E 13 12 11 10 9 8 7 6 5 4 3 2 w W 1 w S 1 3 5 7 9 11 13

  39. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates G ↑ w N 14 w E 13 12 11 10 9 8 7 6 5 4 3 2 w W 1 w S 1 3 5 7 9 11 13

  40. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates G ↑ w N 14 w E 13 12 11 10 9 8 7 6 5 4 3 2 w W 1 w S 1 3 5 7 9 11 13

  41. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 1 3 5 7 9 11 13

  42. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 1 3 5 7 9 11 13

  43. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 0 ◦ 1 3 5 7 9 11 13

  44. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 90 ◦ 90 ◦ 0 ◦ 1 3 5 7 9 11 13

  45. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 90 ◦ 90 ◦ 0 ◦ 1 3 5 7 9 11 13

  46. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 90 ◦ 90 ◦ 0 ◦ 1 3 5 7 9 11 13

  47. Quasi-triangulated Graphs What if there are no (int.) 180 ◦ angle categories? • topological order on G → : x -coordinates • topological order on G ↑ : y -coordinates 90 ◦ 90 ◦ 0 ◦ Lemma. quasi-triangulated angular labeled graph ( G , A Q ), all internal angles have category 0 ◦ or 90 ◦ ⇒ straight-line windrose planar drawing on n × n grid in O ( n ) time 1 3 5 7 9 11 13

  48. Triangulated graphs Let ( G , A Q ) be a triangulated angular labeled graph.

  49. Triangulated graphs Let ( G , A Q ) be a triangulated angular labeled graph. Task: Augment ( G , A Q ) to a quasi-triangulated angular labeled graph ( G ∗ , A Q ∗ ) without internal angle category 180 ◦ .

  50. Triangulated graphs Let ( G , A Q ) be a triangulated angular labeled graph. Task: Augment ( G , A Q ) to a quasi-triangulated angular labeled graph ( G ∗ , A Q ∗ ) without internal angle category 180 ◦ . v

  51. Triangulated graphs Let ( G , A Q ) be a triangulated angular labeled graph. Task: Augment ( G , A Q ) to a quasi-triangulated angular labeled graph ( G ∗ , A Q ∗ ) without internal angle category 180 ◦ . u v

Recommend


More recommend