Skip to main content

An Optimal Hidden-Surface Algorithm and Its Parallelization

  • Conference paper
Computational Science and Its Applications - ICCSA 2011 (ICCSA 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 6784))

Included in the following conference series:

Abstract

Given a collection of non-intersecting simple polygons possibly with holes and with a total of n edges in three-dimensional space; parallel algorithms are given for the problems called hidden-line and hidden-surface removal in computer graphics. More precisely, algorithms are proposed to find the portions of the edges visible from (0,0, ∞ ) and to find the upper envelope (i.e., the pointwise maximum) of the polygons. The proposed solution for the hidden-line problem is the parallelization of the optimal sequential algorithm given by Dévai in 1986. As the optimal sequential algorithm for the hidden-surface problem given by McKenna in 1987 is rather involved, a new optimal sequential algorithm is proposed, which is amenable to parallelization and might also have practical significance in its own right. Both of the parallel hidden-line and hidden-surface algorithms take Θ(logn) time using n 2/logn CREW PRAM processors.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ajwani, D., Sitchinava, N., Zeh, N.: Geometric algorithms for private-cache chip multiprocessors. In: de Berg, M., Meyer, U. (eds.) ESA 2010. LNCS, vol. 6347, pp. 75–86. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  2. Appel, A.: The notion of quantitative invisibility and the machine rendering of solids. In: Proc. 1967 22nd National Conference, ACM 1967, pp. 387–393. ACM Press, New York (1967)

    Chapter  Google Scholar 

  3. Arge, L., Goodrich, M.T., Nelson, M., Sitchinava, N.: Fundamental parallel algorithms for private-cache chip multiprocessors. In: Proc. 20th Annual Symposium on Parallelism in Algorithms and Architectures, SPAA 2008, pp. 197–206. ACM Press, New York (2008)

    Google Scholar 

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

    Article  MATH  MathSciNet  Google Scholar 

  5. Ben-Amram, A.M., Galil, Z.: Topological lower bounds on algebraic random access machines. SIAM J. Comput. 31, 722–761 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  6. de Berg, M., Gray, C.: Computing the visibility map of fat objects. Comput. Geom. Theory Appl. 43(4), 410–418 (2010)

    Article  MATH  MathSciNet  Google Scholar 

  7. de Berg, M., Halperin, D., Overmars, M., Snoeyink, J., van Kreveld, M.: Efficient ray shooting and hidden surface removal. Algorithmica 12, 30–53 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  8. Blelloch, G.E., Maggs, B.M.: Parallel algorithms. In: Atallah, M.J., Blanton, M. (eds.) Algorithms and Theory of Computation Handbook, Chapman & Hall/CRC (2010)

    Google Scholar 

  9. Chazelle, B., Guibas, L.J., Lee, D.T.: The power of geometric duality. BIT 25, 76–90 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  10. Chen, W., Wada, K.: On computing the upper envelope of segments in parallel. IEEE Transactions on Parallel and Distributed Systems 13(1), 5–13 (2002)

    Article  Google Scholar 

  11. Cole, R.: Parallel merge sort. SIAM J. Comput. 17, 770–785 (1988)

    Article  MATH  MathSciNet  Google Scholar 

  12. Cole, R., Sharir, M.: Visibility problems for polyhedral terrains. Journal of Symbolic Computation 7(1), 11–30 (1989)

    Article  MathSciNet  Google Scholar 

  13. Cook, S., Dwork, C., Reischuk, R.: Upper and lower time bounds for parallel random access machines without simultaneous writes. SIAM J. Comput. 15, 87–97 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  14. Dévai, F.: Quadratic bounds for hidden-line elimination. In: Proc. 2nd Annu. ACM Sympos. Comput. Geom, pp. 269–275 (1986)

    Google Scholar 

  15. Dévai, F.: An intersection-sensitive hidden-surface algorithm. In: Proc. Eurographics 1987, pp. 495–502 (1987)

    Google Scholar 

  16. Dévai, F.: An O(logN) parallel time exact hidden-line algorithm. In: Advances in Computer Graphics Hardware II, Record of the Second Eurographics Workshop on Graphics Hardware, pp. 65–73 (1988)

    Google Scholar 

  17. Edelsbrunner, H., O’Rouke, J., Seidel, R.: Constructing arrangements of lines and hyperplanes with applications. SIAM J. Comput. 15, 341–363 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  18. Franklin, W.R.: A linear time exact hidden surface algorithm. Comput. Graph. 14(3), 117–123 (1980); Proc. Siggraph 1980

    Article  Google Scholar 

  19. Galimberti, R., Montanari, U.: An algorithm for hidden-line elimination. Commun. ACM 12, 206 (1969)

    Article  MATH  Google Scholar 

  20. Goodrich, M.T.: A polygonal approach to hidden-line and hidden-surface elimination. CVGIP: Graph. Models Image Process. 54, 1–12 (1992)

    Google Scholar 

  21. Goodrich, M.T.: Constructing arrangements optimally in parallel. Discrete and Computational Geometry 9, 371–385 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  22. Goodrich, M.T., Atallah, M.J., Overmars, M.H.: Output-sensitive methods for rectilinear hidden surface removal. Inform. Comput. 107, 1–24 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  23. Gupta, N., Sen, S.: An efficient output-size sensitive parallel algorithm for hidden-surface removal for terrains. Algorithmica 31, 179–207 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  24. Hagerup, T.: Planar depth-first search in O(logn) parallel time. SIAM J. Comput. 19, 678–704 (1990)

    Article  MATH  Google Scholar 

  25. Halperin, D., Sharir, M.: New bounds for lower envelopes in three dimensions, with applications to visibility in terrains. Discrete and Computational Geometry 12, 313–326 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  26. Hornung, C.: An approach to a calculation-minimized hidden line algorithm. Computers & Graphics 6(3), 121–126 (1982)

    Article  Google Scholar 

  27. Hornung, C.: A method for solving the visibility problem. IEEE Comput. Graph. Appl. 4, 26–33 (1984)

    Article  Google Scholar 

  28. IBM Blue Gene Team: Overview of the IBM Blue Gene/P project. IBM J. Res. Dev. 52, 199–220 (January 2008)

    Google Scholar 

  29. JáJá, J.: An Introduction to Parallel Algorithms. Addison Wesley Longman Publishing Co., Inc, Redwood City (1992)

    MATH  Google Scholar 

  30. Katz, M.J., Overmars, M.H., Sharir, M.: Efficient hidden surface removal for objects with small union size. Comput. Geom. Theory Appl. 2, 223–234 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  31. Keeler, T., Fedorkiw, J., Ghali, S.: The spherical visibility map. Comput. Aided Des. 39, 17–26 (2007)

    Article  Google Scholar 

  32. Ladner, R.E., Fischer, M.J.: Parallel prefix computation. J. ACM 27(4), 831–838 (1980)

    Article  MATH  MathSciNet  Google Scholar 

  33. Thomson Leighton, F.: Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes. Morgan Kaufmann Publishers Inc, San Mateo (1992)

    MATH  Google Scholar 

  34. Loutrel, P.P.: A solution to the hidden-line problem for computer drawn polyhedra. IEEE Trans. Comput. C-19, 205–213 (1970)

    Article  MATH  Google Scholar 

  35. Mark, W.: Future graphics architectures. Queue 6, 54–64 (2008)

    Article  Google Scholar 

  36. McKenna, M.: Worst-case optimal hidden-surface removal. ACM Trans. Graph. 6, 19–28 (1987)

    Article  Google Scholar 

  37. Mulmuley, K.: An efficient algorithm for hidden surface removal. Siggraph Comput. Graph. 23, 379–388 (1989)

    Article  Google Scholar 

  38. Overmars, M.H., Sharir, M.: An improved technique for output-sensitive hidden surface removal. Algorithmica 11, 469–484 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  39. Preparata, F., Vitter, J., Yvinec, M.: Output-sensitive generation of the perspective view of isothetic parallelepipeds. Algorithmica 8, 257–283 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  40. Rajasekaran, S., Reif, J.H.: Handbook of Parallel Computing: Models, Algorithms and Applications. Chapman & Hall/CRC, Boca Raton (2008)

    MATH  Google Scholar 

  41. Reif, J.H.: Depth-first search is inherently sequential. Information Processing Letters 20(5), 229–234 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  42. Reif, J.H., Sen, S.: An efficient output-sensitive hidden surface removal algorithm and its parallelization. In: Proc. 4th Annual Symposium on Computational Geometry, SCG 1988, pp. 193–200. ACM Press, New York (1988)

    Google Scholar 

  43. Reif, J.H., Sen, S.: An efficient output-sensitive hidden-surface removal algorithm for polyhedral terrains. Mathematical and Computer Modelling 21(5), 89–104 (1995)

    Article  MATH  MathSciNet  Google Scholar 

  44. Shannon, G.E.: A linear-processor algorithm for depth-first search in planar graphs. Inf. Process. Lett. 29, 119–123 (1988)

    Article  MATH  MathSciNet  Google Scholar 

  45. Sharir, M., Overmars, M.H.: A simple output-sensitive algorithm for hidden surface removal. ACM Trans. Graph. 11, 1–11 (1992)

    Article  MATH  Google Scholar 

  46. Sodan, A.C., Machina, J., Deshmeh, A., Macnaughton, K., Esbaugh, B.: Parallelism via multithreaded and multicore CPUs. Computer 43, 24–32 (2010)

    Article  Google Scholar 

  47. Sutherland, I.E., Sproull, R.F., Schumacker, R.A.: A characterization of ten hidden-surface algorithms. ACM Comput. Surv. 6(1), 1–55 (1974)

    Article  MATH  Google Scholar 

  48. Vishkin, U.: A PRAM-on-chip vision (invited abstract). In: Proc. 7th International Symposium on String Processing Information Retrieval (Spire 2000), p. 260. IEEE Computer Society Press, Washington, DC, USA (2000)

    Chapter  Google Scholar 

  49. Vishkin, U.: Using simple abstraction to reinvent computing for parallelism. Commun. ACM 54, 75–85 (2011)

    Article  Google Scholar 

  50. Weiss, R.A.: Be Vision, a package of IBM 7090 FORTRAN programs to draw orthographic views of combinations of plane and quadric surfaces. J. ACM 13, 194–204 (1966)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Dévai, F. (2011). An Optimal Hidden-Surface Algorithm and Its Parallelization. In: Murgante, B., Gervasi, O., Iglesias, A., Taniar, D., Apduhan, B.O. (eds) Computational Science and Its Applications - ICCSA 2011. ICCSA 2011. Lecture Notes in Computer Science, vol 6784. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21931-3_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-21931-3_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-21930-6

  • Online ISBN: 978-3-642-21931-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics