skip to main content
research-article

Direct trimming of NURBS surfaces on the GPU

Published:27 July 2009Publication History
Skip Abstract Section

Abstract

This paper presents a highly efficient direct trimming technique for NURBS surfaces, which is applicable to tessellation-based rendering as well as ray tracing systems. The central idea is to split the trim curves into monotonic segments with respect to the two parameter dimensions of the surface patches. We use an optimized bisection method to classify a point with respect to each monotonic trim curve segment without performing an actual intersection test. Our hierarchical acceleration structure allows the use of a large number of such curve segments and performs the bisection method only for points contained in the bounding boxes of the curve segments.

We have integrated our novel point classification scheme into a GPU-based NURBS ray casting system and implemented the entire trimmed NURBS rendering algorithm in a single OpenGL GLSL shader. The shader can handle surfaces and trim curves of arbitrary degrees, which allows the use of original CAD data without incorporating any approximations. Performance data confirms that our trimming approach can deal with hundreds of thousands of trim curves at interactive rates. Our point classification scheme can be applied to other application domains dealing with complex curved regions including flood fills, font rendering and vector graphics mapped on arbitrary surfaces.

Skip Supplemental Material Section

Supplemental Material

tps086_09.mp4

References

  1. Balázs, Á., Guthe, M., and Klein, R. 2004. Efficient trimmed nurbs tessellation. Journal of WSCG 12, 1 (Feb.), 27--33.Google ScholarGoogle Scholar
  2. Benthin, C., Wald, I., and Slusallek, P. 2004. Real-time rendering: Interactive ray tracing of free-form surfaces. In AFRIGRAPH '04: Proceedings of the 3rd International Conference on Computer Graphics, Virtual Reality, Visualisation and Interaction in Africa, 99--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Collins, G. E., and Loos, R. 1976. Polynomial real root isolation by differentiation. In SYMSAC '76: Proceedings of the third ACM Symposium on Symbolic and Algebraic Computation, ACM, New York, NY, USA, 15--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Efremov, A., Havran, V., and Seidel, H.-P. 2005. Robust and numerically stable bézier clipping method for ray tracing nurbs surfaces. In SCCG '05: Proceedings of the 21st Spring Conference on Computer Graphics, ACM, New York, NY, USA, 127--135. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Farin, G. 1993. Curves and Surfaces for Computer Aided Geometric Design (3rd ed.): A practical guide. Academic Press Professional, Inc., San Diego, CA, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Farouki, R. T. 1987. Trimmed-surface algorithms for the evaluation and interrogation of solid boundary representations. IBM J. Res. Dev. 31, 3, 314--334. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Geimer, M., and Abert, O. 2005. Interactive ray tracing of trimmed bicubic bézier surfaces without triangulation. In Proceedings of WSCG, 71--78.Google ScholarGoogle Scholar
  8. Guthe, M., Balázs, A., and Klein, R. 2005. Gpu-based trimming and tessellation of nurbs and t-spline surfaces. In ACM SIGGRAPH 2005 Papers, ACM, New York, NY, USA, 1016--1023. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Joy, K. I., and Bhetanabhotla, M. N. 1986. Ray tracing parametric surface patches utilizing numerical techniques and ray coherence. In SIGGRAPH '86: Proceedings of the 13th Annual Conference on Computer Graphics and Interactive Techniques, ACM, New York, NY, USA, 279--285. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Kajiya, J. T. 1982. Ray tracing parametric patches. SIGGRAPH Comput. Graph. 16, 3, 245--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Keyser, J., Culver, T., Manocha, D., and Krishnan, S. 1999. Mapc: a library for efficient and exact manipulation of algebraic points and curves. In SCG '99: Proceedings of the Fifteenth Annual Symposium on Computational Geometry, ACM, New York, NY, USA, 360--369. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Kumar, S., and Manocha, D. 1995. Efficient rendering of trimmed NURBS surfaces. Computer-Aided Design 27, 7, 509--521.Google ScholarGoogle ScholarCross RefCross Ref
  13. Mudur, S., and Koparkar, P. 1984. Interval methods for processing geometric objects. IEEE Comput. Graph. Appl. 4, 2, 7--17. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Nishita, T., Sederberg, T. W., and Kakimoto, M. 1990. Ray tracing trimmed rational surface patches. In SIGGRAPH '90: Proceedings of the 17th Annual Conference on Computer Graphics and Interactive Techniques, ACM, New York, NY, USA, 337--345. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Pabst, H.-F., Springer, J., Schollmeyer, A., Lenhardt, R., Lessig, C., and Froehlich, B. 2006. Ray casting of trimmed nurbs surfaces on the gpu. Symposium on Interactive Ray Tracing, 151--160.Google ScholarGoogle Scholar
  16. Pavlidis, T. 1982. Algorithms for Graphics and Image Processing. Computer Science Press, Rockville, Maryland. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Qin, Z., McCool, M. D., and Kaplan, C. 2008. Precise vector textures for real-time 3d rendering. In SI3D '08: Proceedings of the 2008 Symposium on Interactive 3D Graphics and Games, ACM, New York, NY, USA, 199--206. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Rockwood, A., Heaton, K., and Davis, T. 1989. Real-time rendering of trimmed surfaces. In SIGGRAPH '89: Proceedings of the 16th Annual Conference on Computer Graphics and Interactive Techniques, ACM, New York, NY, USA, 107--116. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Sederberg, T. W., and Wang, X. 1987. Rational hodographs. Computer Aided Geometric Design 4, 4 (Dec.), 333--335.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Sederberg, T. W. 1995. Point and tangent computation of tensor product rational bézier surfaces. Computer Aided Geometric Design 12, 1, 103--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Song, X., Sederberg, T. W., Zheng, J., Farouki, R. T., and Hass, J. 2004. Linear perturbation methods for topologically consistent representations of free-form surface intersections. Computer Aided Geometric Design 21, 3, 303--319. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Toth, D. L. 1985. On ray tracing parametric surfaces. SIGGRAPH Computer Graphics 19, 3, 171--179. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Wang, S.-W., Shih, Z.-C., and Chang, R.-C. 2000. An improved rendering technique for ray tracing bézier and b-spline surfaces. The Journal of Visualization and Computer Animation 11, 4 (Sept.), 209--219.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Direct trimming of NURBS surfaces on the GPU

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        • Published in

          cover image ACM Transactions on Graphics
          ACM Transactions on Graphics  Volume 28, Issue 3
          August 2009
          750 pages
          ISSN:0730-0301
          EISSN:1557-7368
          DOI:10.1145/1531326
          Issue’s Table of Contents

          Copyright © 2009 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 27 July 2009
          Published in tog Volume 28, Issue 3

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader