Skip to main content

Computational Geometry

  • Chapter
  • First Online:
Explaining Algorithms Using Metaphors

Part of the book series: SpringerBriefs in Computer Science ((BRIEFSCOMPUTER))

Abstract

The second main chapter of this book is dedicated to problems from the area of computational geometry. We consider four different problems. First, we discuss the well-known use of the rubber band metaphor to find the Euclidean shortest path in a plane with obstacles. In the second problem, we present our original use of the rubber band metaphor to significantly simplify simple distance calculations, in particular the distance between two line segments in two, three, and even more dimensions. The third problem considered is concerned with testing whether a point is contained in a polygon. For this problem we develop an original metaphor based on the definition of the winding number, and we use it to design an algorithm that is easy to implement. Finally, we show another physical metaphor that can be used to triangulate a polygon easily.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Asano, T., Asano, T., Guibas, L.J., Hershberger, J., Imai, H.: Visibility of disjoint polygons. Algorithmica 1(1), 49–63 (1986)

    Article  MathSciNet  MATH  Google Scholar 

  2. de Berg, M., Cheong, O., van Kreveld, M., Overmars, M.: Computational Geometry: Algorithms and Applications, 3rd edn. Springer, Heidelberg (2008)

    MATH  Google Scholar 

  3. Canny, J.F.: The Complexity of Robot Motion Planning. MIT Press, Cambridge (1988)

    Google Scholar 

  4. Chazelle, B.: Triangulating a simple polygon in linear time. Discrete Comput. Geom. 6(5), 485–524 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  5. Delaunay, B.N.: Sur la sphère vide. Izvestia Akademii Nauk SSSR, Otdelenie Matematicheskikh i Estestvennykh Nauk 7, 793–800 (1934)

    Google Scholar 

  6. Eberly, D.H.: 3D Game Engine Design: A Practical Approach to Real-Time Computer Graphics. CRC Press, Boca Raton (2000)

    Google Scholar 

  7. Edelsbrunner, H.: Algorithms in Combinatorial Geometry. Springer, Berlin (1987)

    Book  MATH  Google Scholar 

  8. Guibas, L.J., Hershberger, J., Leven, D., Sharir, M., Tarjan, R.E.: Linear-time algorithms for visibility and shortest path problems inside triangulated simple polygons. Algorithmica 2, 209–233 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  9. Haines, E.: Point in polygon strategies. In: Heckbert, P. (ed.) Graphics Gems IV, pp. 24–46. Academic Press, San Diego (1994)

    Google Scholar 

  10. Hershberger, J., Suri, S.: Efficient computation of Euclidean shortest paths in the plane. In: Proceedings of the 34th Annual Symposium on Foundations of Computer Science (FOCS 1993), pp. 508–517. IEEE Computer Society (1993)

    Google Scholar 

  11. Hershberger, J., Suri, S.: An optimal algorithm for Euclidean shortest paths in the plane. SIAM J. Comput. 28(6), 2215–2256 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  12. Li, F., Klette, R.: Rubberband algorithms for solving various 2D or 3D shortest path problems. In: Computing: Theory and Applications, 2007. ICCTA ’07, pp. 9–19. doi:10.1109/ICCTA.2007.113 (2007)

  13. O’Rourke, J.: Computational Geometry in C. Cambridge University Press, Cambridge (1998)

    Book  MATH  Google Scholar 

  14. Shimrat, M.: Algorithm 112: position of point relative to polygon. Commun. ACM 5(8), 434 (1962)

    Article  Google Scholar 

  15. Sunday, D.: Inclusion of a Point in a Polygon. http://geomalgorithms.com/a03_inclusion.html (2012). Accessed 8 Dec 2012

  16. Tarjan, R.E., Wyk, C.J.V.: An \(O(n \log \log n)\)-time algorithm for triangulating a simple polygon. SIAM J. Comput. 17(1), 143–178 (1988)

    Article  MathSciNet  MATH  Google Scholar 

  17. Welzl, E.: Constructing the visibility graph for \(n\)-line segments in \(O(n^2)\) time. Inf. Process. Lett. 20(4), 167–171 (1985)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Michal Forišek .

Rights and permissions

Reprints and permissions

Copyright information

© 2013 The Author(s)

About this chapter

Cite this chapter

Forišek, M., Steinová, M. (2013). Computational Geometry. In: Explaining Algorithms Using Metaphors. SpringerBriefs in Computer Science. Springer, London. https://doi.org/10.1007/978-1-4471-5019-0_3

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-5019-0_3

  • Published:

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-4471-5018-3

  • Online ISBN: 978-1-4471-5019-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics