This Article 
 Bibliographic References 
 Add to: 
Interactive Display of Large NURBS Models
December 1996 (vol. 2 no. 4)
pp. 323-336

Abstract—We present algorithms for interactive rendering of large-scale NURBS models. The algorithms convert the NURBS surfaces to Bézier surfaces, tessellate each Bézier surface into triangles, and render them using the triangle-rendering capabilities common to current graphics systems. This paper presents algorithms for computing tight bounds on surface properties in order to generate high quality tessellation of Bézier surfaces. We introduce enhanced visibility determination techniques and present methods to make efficient use of coherence between successive frames. In addition, we also discuss issues in parallelization of these techniques. The algorithm also avoids polygonization anomalies like cracks. Our algorithms work well in practice and, on high-end graphics systems, are able to display models described using thousands of Bézier surfaces at interactive frame rates.

[1] K. Akeley, "Reality Engine Graphics," Proc. SIGGRAPH '93, pp. 109-116, 1993.
[2] H. Fuchs et al., “Pixel Planes 5: A Heterogeneous Multiprocessor Graphics System Using Processor-Enhanced Memories,” Computer Graphics (Proc. Siggraph), Vol. 23, No. 3, July 1989, pp. 79-88.10.
[3] E. Catmull, "A Subdivision Algorithm for Computer Display of Curved Surfaces," PhD thesis, Univ. of Utah, 1974.
[4] J.H. Clark, "A Fast Algorithm for Rendering Parametric Surfaces," ACM Computer Graphics, vol. 13, no. 2, pp. 289-299, 1979 (SIGGRAPH Proc.).
[5] J.M. Lane and R.F. Riesenfeld, "Bounds on Polynomials," BIT, vol. 21, no. 1, pp. 112-117, 1981.
[6] A.R. Forrest, "On the Rendering of Surfaces," ACM Computer Graphics, vol. 13, no. 2, pp. 253-259, 1979 (SIGGRAPH Proc.).
[7] J.T. Kajiya, “Ray Tracing Parametric Patches,” Computer Graphics (Proc. Siggraph), Vol. 16, No. 3, July 1982, pp. 245-254.
[8] T. Nishita, T.W. Sederberg, and M. Kakimoto, "Ray-tracing Trimmed Rational Surface Patches," Computer Graphics (Proc. SIGGRAPH '90), vol. 24, pp. 337-345, Aug. 1990.
[9] J.M. Lane, L.C. Carpenter, J.T. Whitted, and J.F. Blinn, "Scan Line Methods for Displaying Parametrically Defined Surfaces," Comm. ACM, vol. 23, no. 1, pp. 23-34, 1980.
[10] C.L. Bajaj, "Rational Hypersurface Display," ACM Computer Graphics, vol. 24, no. 2, pp. 117-127, 1990 (Symp. on Interactive 3D Graphics).
[11] S.S. Abi-Ezzi and L.A. Shirman, "The Scaling Behavior of Viewing Transformations," IEEE Computer Graphics and Applications, vol. 13, no. 3, pp. 48-54, 1993.
[12] R. Bedichek, C. Ebeling, G. Winkenbach, and T. DeRose, "Rapid Low-Cost Display of Spline Surfaces," Proc. Advanced Research in VLSI, C. Séquin, ed., pp. 340-355. MIT Press, 1991.
[13] T. DeRose, M. Bailey, B. Barnard, R. Cypher, D. Dobrikin, C. Ebeling, S. Konstaninidou, L. McMurchie, H. Mizrahi, and B. Yost, "Apex: Two Architectures for Generating Parametric Curves and Surfaces," The Visual Computer, vol. 5, no. 5, pp. 264-276, 1989.
[14] W.L. Luken, "Tessellation of Trimmed NURB Surfaces," Computer Science Researc Report 19322(84059), IBM Research Division, 1993.
[15] W.L. Luken and F. Cheng, "Rendering Trimmed NURB Surfaces," Computer Science Research Report 18669(81711), IBM Research Division, 1993.
[16] F. Cheng, "Computation Techniques on NURBS Surfaces," Proc. SIAM Conf. Geometric Design,Tempe, Ariz., 1993.
[17] M. Shantz and S. Chang, "Rendering Trimmed NURBS with Adaptive Forward Differencing," ACM Computer Graphics, vol. 22, no. 4, pp. 189-198, 1988 (SIGGRAPH Proc.).
[18] M. Shantz and S. Lien, "Shading Bicubic Patches," ACM Computer Graphics, vol. 21, no. 4, pp. 189-196, 1987 (SIGGRAPH Proc.).
[19] D.R. Forsey and V. Klassen, "An Adaptive Subdivision Algorithm for Crack Prevention in the Display of Parametric Surfaces," Proc. Graphics Interface, pp. 1-8, 1990.
[20] A. Rockwood, K. Heaton, and T. Davis, "Real-Time Rendering of Trimmed Surfaces," ACM Computer Graphics, vol. 23, no. 3, pp. 107-117, 1989 (SIGGRAPH Proc.).
[21] A. Rockwood, "A Generalized Scanning Technique for Display of Parametrically Defined Surface," IEEE Computer Graphics and Applications, vol. 7, no. 8, pp. 15-26, 1987.
[22] S.S. Abi-Ezzi and L.A. Shirman, "Tessellation of Curved Surfaces Under Highly Varying Transformations," Proc. Eurographics, pp. 385-397, 1991.
[23] D. Filip, R. Magedson, and R. Markot, “Surface Algorithm Using Bounds on Derivatives,” Computer Aided Geometric Design, Vol. 3, No. 4, 1986, pp. 295-311.
[24] S. Kumar, D. Manocha, and A. Lastra, "Interactive Display of Large Scale NURBS Models," Proc. Symp. Interactive 3D Graphics, pp. 51-58,Monterey, Calif., 1995.
[25] G. Farin, Curves and Surfaces for Computer Aided Geometric Design: A Practical Guide. Academic Press, 1993.
[26] M.F. Deering and S.T. Nelson, "Leo: A System for Cost Effective 3D Shaded Graphics," SIGGRAPH '93 Proc., pp. 101-108,Anaheim, Calif., Aug. 1993.
[27] S. Krishnan and D. Manocha, "Global Visibility and Hidden Surface Algorithms for Free Form Surfaces," Technical Report TR94-063, Dept. of Computer Science, Univ. of North Carolina, 1994.
[28] S. Kumar and D. Manocha, "Hierarchical Visibility Culling for Spline Models," Proc. Graphics Interface, pp. 142-150,Toronto, 1996.
[29] D. Manocha and J. Demmel, "Algorithms for Intersecting Parametric and Algebraic Curves," Proc. Graphics Interface, pp. 232-241, 1992.
[30] T.W. Sederberg, “Algorithm for Algebraic Curve Intersection,” Computer Aided Design, vol. 21, no. 9, pp. 547-554, 1989.
[31] R. Nash Silicon Graphics, personal communication, 1993.
[32] D. Banks, "Interactive Manipulation and Display of Two-Dimensional Surfaces in Four-Dimensional Space," ACM Computer Graphics, vol. 26, pp. 197-207, 1992 (special issue on Symp. Interactive 3D Graphics).
[33] D. Ellsworth, H. Good, and B. Tebbs, "Distributing Display Lists on a Multicomputer," ACM Computer Graphics, vol. 24, no. 2, 1990 (Symp. Interactive 3D Graphics).
[34] S. Kumar and D. Manocha, "Efficient Rendering of Trimmed NURBS Surfaces," Computer-Aided Design, vol. 27, no. 7, pp. 509-521, July 1995.
[35] D. Forsey and R.H. Bartels, "Hierarchical b-Spline Refinement," ACM Computer Graphics, vol. 27, no. 7, pp. 509-521, July 1995.
[36] B. O'Neill, Elementary Differential Geometry. Academic Press, 1966.
[37] J.V. Uspensky, Theory of Equations.New York: McGraw-Hill, 1948.

Index Terms:
NURBS, tessellation, triangulation, visibility, interactive display, CAD, parallel algorithm.
Subodh Kumar, Dinesh Manocha, Anselmo Lastra, "Interactive Display of Large NURBS Models," IEEE Transactions on Visualization and Computer Graphics, vol. 2, no. 4, pp. 323-336, Dec. 1996, doi:10.1109/2945.556501
Usage of this product signifies your acceptance of the Terms of Use.