Abstract

Flipping is a local and efficient operation to construct the convex hull in an incremental fashion. However, it is known that the traditional flip algorithm is not able to compute the convex hull when applied to a polyhedron in R3. Our novel **Flip-Flop** algorithm is a variant of the flip algorithm. It overcomes the deficiency of the traditional one to always compute the convex hull of a given star-shaped polyhedron with provable correctness. Applying this to construct convex hull of a point set in R3, we develop **ffHull**, a flip algorithm that allows nonrestrictive insertion of many vertices before any flipping of edges. This is unlike the well-known incremental fashion of strictly alternating between inserting a single vertex and flipping. The new approach is not only simpler and more efficient for CPU implementation but also maps well to the massively parallel nature of the modern GPU. As shown in our experiments, ffHull running on the CPU is as fast as the best-known convex hull implementation, qHull. As for the GPU, ffHull also outperforms all known prior work. From this, we further obtain the first known solution to computing the 2D regular triangulation on the GPU.

CR Categories

I.3.5 [Computer Graphics]: Computational Geometry and Object Modelling - Geometric algorithms I.3.1 [Computer Graphics]: Hardware Architecture - Graphics processors

Keywords

Lawson's flip, flipping, regular triangulation, Delaunay triangulation, incremental insertion, GPGPU

Animated Poster (click to navigate)

Paper: flipflop.pdf (625K) in I3D 2013.

See TVCG vol. 23(2), 1056-1069, 2017 for latest update.

Poster: flipflop-poster.pdf (398K)

Video: flipflop.mov (22.5M)

Slides: flipflop.pptx (3.0M)

Thesis: Local Transformation (4.11M)

Software:

Related Projects:
Dated

- 18 Dec 2012
- 26 Mar 2013
- 21 Apr 2013
- 8 Apr 2015
- 19 June 2019