Floating Tangents for Approximating Spatial Curves with \(G^1\) Piecewise Helices
Computer-Aided Geometric Design, June 2013
Abstract
Curves are widely used in computer science to describe real-life objects such as slender deformable structures. Using only 3 parameters per element, piecewise helices offer an interesting and compact way of representing digital curves. In this paper, we present a robust and fast algorithm to approximate Bézier curves with \(G^1\) piecewise helices. Our approximation algorithm takes a Bézier spline as input along with an integer N and returns a piecewise helix with N elements that closely approximates the input curve. The key idea of our method is to take N+1 evenly distributed points along the curve, together with their tangents, and interpolate these tangents with helices by slightly relaxing the points. Building on previous work, we generalize the proof for Ghosh's co-helicity condition, which serves us to guarantee the correctness of our algorithm in the general case. Finally, we demonstrate both the efficiency and robustness of our method by successfully applying it on various datasets of increasing complexity, ranging from synthetic curves created by an artist to automatic image-based reconstructions of real data such as hair, heart muscular fibers or magnetic field lines of a star.
Download
- Paper: [PDF]
- Accompanying video: [MP4]
- Source code [Archive .tgz]
This source code is distributed under the GNU GPLv.3 licence. Before downloading this code please check out our licensing policy. For a quick start, please read the README.md file contained in the archive. Careful, the 2d case is not properly handled in this code, a new version fixing this issue will soon be available.
Acknowledgments
We would like to thank Laurence Boissieux for creating the synthetic
datasets used in this paper, Damien Rohmer for providing the heart muscle
fiber dataset and Chuck Hansen and Benjamin Brown for sharing with us
the dataset containing the magnetic field lines of a star. We would also like
to thank Wenzel Jakob, Jonathan T. Moon and Steve Marschner for making
the hair capture datasets publicly available. Finally, we are grateful to the
reviewers for their insightful and very helpful comments.