hamiltonian triangulations and triangle strips an overview
play

Hamiltonian Triangulations and Triangle Strips: an overview Peter - PowerPoint PPT Presentation

Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Hamiltonian Triangulations and Triangle Strips: an overview Peter Palfrader University of Salzburg February 2011 Introduction Hamiltonian Triangulations


  1. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Hamiltonian Triangulations and Triangle Strips: an overview Peter Palfrader University of Salzburg February 2011

  2. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Outline Introduction 1 Motivation Triangle Strips Triangle Fans Hamiltonian Triangulations 2 Triangulations Hamiltonian Triangulations Sequential Triangulations Tristrip Decomposition 3 Introduction Heuristics Further Reading 4

  3. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Outline Introduction 1 Motivation Triangle Strips Triangle Fans Hamiltonian Triangulations 2 Triangulations Hamiltonian Triangulations Sequential Triangulations Tristrip Decomposition 3 Introduction Heuristics Further Reading 4

  4. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Motivation We can transmit n triangles in 3 n time/items. v 5 v 1 v 3 v 4 v 6 v 2 ( v 1 , v 2 , v 3 ) , ( v 2 , v 4 , v 3 ) , ( v 4 , v 5 , v 3 ) , ( v 4 , v 6 , v 5 ) But can we do better?

  5. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Strips Yes, we can do better. Do not specify one triangle at a time, but sequences of triangles. v 5 v 1 v 3 v 4 v 6 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , v 6 ) Cost: 2 + n

  6. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Strips Yes, we can do better. Do not specify one triangle at a time, but sequences of triangles. v 5 v 1 v 3 v 4 v 6 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , v 6 ) Cost: 2 + n

  7. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Strips Yes, we can do better. Do not specify one triangle at a time, but sequences of triangles. v 5 v 1 v 3 v 4 v 6 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , v 6 ) Cost: 2 + n

  8. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Strips Yes, we can do better. Do not specify one triangle at a time, but sequences of triangles. v 5 v 1 v 3 v 4 v 6 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , v 6 ) Cost: 2 + n

  9. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Strips Yes, we can do better. Do not specify one triangle at a time, but sequences of triangles. v 5 v 1 v 3 v 4 v 6 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , v 6 ) Cost: 2 + n

  10. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Non-sequential Strips Not all strips are sequential: v 6 v 1 v 3 v 7 v 5 v 4 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , . . . and now? ( v 1 , v 2 , v 3 , v 4 , swap , v 5 , v 6 , v 7 ) , or ( v 1 , v 2 , v 3 , v 4 , v 3 , v 5 , v 6 , v 7 ) .

  11. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Non-sequential Strips Not all strips are sequential: v 6 v 1 v 3 v 7 v 5 v 4 v 2 ( v 1 , v 2 , v 3 , v 4 , v 5 , . . . and now? ( v 1 , v 2 , v 3 , v 4 , swap , v 5 , v 6 , v 7 ) , or ( v 1 , v 2 , v 3 , v 4 , v 3 , v 5 , v 6 , v 7 ) .

  12. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Visibility Sometimes triangle orientation is used for backface culling. v 5 v 5 v 1 v 1 v 3 v 3 v 4 v 4 v 6 v 6 v 2 v 2 This presents a problem in sequential strips. Solution: Use swap primitive or zero-area triangle.

  13. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Visibility Sometimes triangle orientation is used for backface culling. v 5 v 5 v 1 v 1 v 3 v 3 v 4 v 4 v 6 v 6 v 2 v 2 This presents a problem in sequential strips. Solution: Use swap primitive or zero-area triangle.

  14. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Fans Similar construct: Triangle Fan. v 6 v 5 v 7 v 4 v 0 v 3 v 2 v 1 ( v 0 , v 1 , v 2 , v 3 , v 4 , v 5 , v 6 , v 7 )

  15. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Fans Similar construct: Triangle Fan. v 6 v 5 v 7 v 4 v 0 v 3 v 2 v 1 ( v 0 , v 1 , v 2 , v 3 , v 4 , v 5 , v 6 , v 7 )

  16. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Fans Similar construct: Triangle Fan. v 6 v 5 v 7 v 4 v 0 v 3 v 2 v 1 ( v 0 , v 1 , v 2 , v 3 , v 4 , v 5 , v 6 , v 7 )

  17. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Fans Similar construct: Triangle Fan. v 6 v 5 v 7 v 4 v 0 v 3 v 2 v 1 ( v 0 , v 1 , v 2 , v 3 , v 4 , v 5 , v 6 , v 7 )

  18. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangle Fans Every convex polygon can be turned trivially into a triangle fan.

  19. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Outline Introduction 1 Motivation Triangle Strips Triangle Fans Hamiltonian Triangulations 2 Triangulations Hamiltonian Triangulations Sequential Triangulations Tristrip Decomposition 3 Introduction Heuristics Further Reading 4

  20. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangulation of a Polygon Polygon triangulation is the decomposition of a polygonal area into a set of triangles [WP]. Many different algorithms to create a triangulation: Ear-clipping: O ( n 2 ) Convex polygons: O ( n ) all simple polygons: O ( n ) [Chazelle 1991] non simple polygons: Ω( n log n ) .

  21. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Triangulation of a Polygon Polygon triangulation is the decomposition of a polygonal area into a set of triangles [WP]. Many different algorithms to create a triangulation: Ear-clipping: O ( n 2 ) Convex polygons: O ( n ) all simple polygons: O ( n ) [Chazelle 1991] non simple polygons: Ω( n log n ) .

  22. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Dual Graph of a Triangulation A graph G is said to be the dual graph of a triangulation T if each vertex of G corresponds to exactly one triangle of T , and two vertices are connected iff their corresponding triangles share an edge.

  23. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Dual Graph of a Triangulation A graph G is said to be the dual graph of a triangulation T if each vertex of G corresponds to exactly one triangle of T , and two vertices are connected iff their corresponding triangles share an edge.

  24. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Hamiltonian Triangulation Def.: A triangulation is Hamiltonian if its dual graph contains a Hamiltonian path [Arkin et al., 1994]. not a Hamiltonian a Hamiltonian triangulation triangulation Not every polygon has a Hamiltonian triangulation.

  25. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Hamiltonian Triangulation Def.: A triangulation is Hamiltonian if its dual graph contains a Hamiltonian path [Arkin et al., 1994]. not a Hamiltonian a Hamiltonian triangulation triangulation Not every polygon has a Hamiltonian triangulation.

  26. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Hamiltonian Triangulation Problem: Does a given simple polygon P have a Hamiltonian triangulation? Arkin et al. solve this in O ( | visibilitygraph | ) : Def.: D [ i , j ] ⇔ subpolygon left of ( i , j ) has a Hamiltonian triangulation ending with ( i , j ) . D [ i , i + 2 ] = ( i , i + 2 ) is a chord of P . D [ i , j ] = ( D [ i , j − 1 ] and ( i , j − 1 ) visible ) or ( D [ i + 1 , j ] and ( i + 1 , j ) visible ) . P has a Hamiltonian triangulation if there are i , j with D [ i , j ] and D [ j , i ] . [Arkin et al., 1994]

  27. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Hamiltonian Triangulation Problem: Does a given simple polygon P have a Hamiltonian triangulation? Arkin et al. solve this in O ( | visibilitygraph | ) : Def.: D [ i , j ] ⇔ subpolygon left of ( i , j ) has a Hamiltonian triangulation ending with ( i , j ) . D [ i , i + 2 ] = ( i , i + 2 ) is a chord of P . D [ i , j ] = ( D [ i , j − 1 ] and ( i , j − 1 ) visible ) or ( D [ i + 1 , j ] and ( i + 1 , j ) visible ) . P has a Hamiltonian triangulation if there are i , j with D [ i , j ] and D [ j , i ] . [Arkin et al., 1994]

  28. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Two-Guard-Problem Walkability: P is walkable if two guards can walk along different paths from a point s on the polygon to a point t on the polygon without losing sight of each other. P is straight walkable if the guards need not backtrack. P is discretely straight walkable if at any time only one guard is walking while the other rests at a vertex.

  29. Introduction Hamiltonian Triangulations Tristrip Decomposition Further Reading Two-Guard-Problem Easy to see: a discretely straight walkable polygon has a Hamiltonian triangulation [Arkin et al., 1994]. Walkability, Straight Walkability and Discretely Straight Walkability can be checked in O ( n ) time [Bhattacharya et al., 2001]. Furthermore, Bhattacharya et al.’s algorithm actually determines all pairs of points of P which allow ((discrete) straight) walks. Narasimhan gives a linear time algorithm for constructing a Hamiltonian triangulation given a vertex pair allowing a discrete straight walk [Narasimhan 1995].

Recommend


More recommend