On Computing Straight Skeletons by Means of Kinetic Triangulations

  • Peter Palfrader
  • Martin Held
  • Stefan Huber
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7501)

Abstract

We study the computation of the straight skeleton of a planar straight-line graph (PSLG) by means of the triangulation-based wavefront propagation proposed by Aichholzer and Aurenhammer in 1998, and provide both theoretical and practical insights. As our main theoretical contribution we explain the algorithmic extensions and modifications of their algorithm necessary for computing the straight skeleton of a general PSLG within the entire plane, without relying on an implicit assumption of general position of the input, and when using a finite-precision arithmetic. We implemented this extended algorithm in C and report on extensive experiments. Our main practical contribution is (1) strong experimental evidence that the number of flip events that occur in the kinetic triangulation of real-world data is linear in the number n of input vertices, (2) that our implementation, Surfer, runs in \(\ensuremath\mathcal{O}(n \log n)\) time on average, and (3) that it clearly is the fastest straight-skeleton code currently available.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aichholzer, O., Alberts, D., Aurenhammer, F., Gärtner, B.: Straight Skeletons of Simple Polygons. In: Proc. 4th Internat. Symp. of LIESMARS, Wuhan, P.R. China, pp. 114–124 (1995)Google Scholar
  2. 2.
    Aichholzer, O., Aurenhammer, F.: Straight Skeletons for General Polygonal Figures in the Plane. In: Samoilenko, A.M. (ed.) Voronoi’s Impact on Modern Science, Book 2. Institute of Mathematics of the National Academy of Sciences of Ukraine, Kiev, Ukraine, pp. 7–21 (1998)Google Scholar
  3. 3.
    Auer, T., Held, M.: Heuristics for the Generation of Random Polygons. In: Proc. Canad. Conf. Comput. Geom. (CCCG 1996), pp. 38–44. Carleton University Press, Ottawa (1996)Google Scholar
  4. 4.
    Cacciola, F.: 2D Straight Skeleton and Polygon Offsetting. In: CGAL User and Reference Manual. CGAL Editorial Board, 4.0 edition (2012)Google Scholar
  5. 5.
    CGAL. Computational Geometry Algorithms Library, http://www.cgal.org/
  6. 6.
    Cheng, S.-W., Vigneron, A.: Motorcycle Graphs and Straight Skeletons. Algorithmica 47, 159–182 (2007)MathSciNetMATHCrossRefGoogle Scholar
  7. 7.
    Eppstein, D., Erickson, J.: Raising Roofs, Crashing Cycles, and Playing Pool: Applications of a Data Structure for Finding Pairwise Interactions. Discrete Comput. Geom. 22(4), 569–592 (1999)MathSciNetMATHCrossRefGoogle Scholar
  8. 8.
    GNU. The GNU MPFR Library, http://www.mpfr.org/
  9. 9.
    Hanke, S., Ottmann, T., Schuierer, S.: The Edge-Flipping Distance of Triangulations. J. Universal Comput. Sci. 2, 570–579 (1996)MathSciNetGoogle Scholar
  10. 10.
    Huber, S., Held, M.: Theoretical and Practical Results on Straight Skeletons of Planar Straight-Line Graphs. In: Proc. 27th Annu. ACM Sympos. Comput. Geom., Paris, France, pp. 171–178 (June 2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Peter Palfrader
    • 1
  • Martin Held
    • 1
  • Stefan Huber
    • 2
  1. 1.FB ComputerwissenschaftenUniversität SalzburgSalzburgAustria
  2. 2.FB MathematikUniversität SalzburgSalzburgAustria

Personalised recommendations