Correct Shading of Regularized CSG Solids Using a Depth-Interval Buffer

  • Jaroslaw R. Rossignac
  • Jeffrey Wu
Part of the EurographicSeminars book series (FOCUS COMPUTER)


A convenient interactive design environment requires efficient facilities for shading solid models represented in CSG. Shading techniques based on boundary evaluation or ray casting that require calculations of geometric intersections are too inefficient for interactive graphics when CSG primitives with curved (parametric) surfaces are involved. Projective approaches, where the primitive surfaces are scan-converted using standard hardware-supported graphic functions are preferred. Since not all the points of the faces of a CSG primitive lie on the CSG solid, scan conversion must be combined with a procedure that tests the produced 3D surface-points against the original CSG expression. Point classifications against primitives defined by arbitrary curved boundaries may be performed, without geometric intersections, through depth-comparisons at each pixel. This approach has been implemented for the Pixel-Power machine by researchers at UNC. It deals with complex CSG trees by converting CSG expressions into sum-ofproduct form and repeatedly scan-converting the primitives of each product. The Trickle algorithm, which considerably reduces the number of scan-conversions in the general case has been developed at IBM Research and presented elsewhere. This paper discusses several recent improvements to the original Trickle algorithm. The overall algorithm has been simplified. The scan-conversion process and the point classification tests have been modified to correctly handle cases where several primitive faces coincide within an arbitrary numerical resolution. These enhancements are not only necessary for on/on cases in regularized Boolean expressions, but also for processing pairs of faces near their common edges. Finally, we point out that a simple two-pass extension of the trickle algorithm using an auxiliary shadow buffer suffices to compute directly from CSG shaded images with shadows.


Front Face Boundary Evaluation Boolean Expression Back Face Geometric Intersection 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Requicha, A. A. G. and Tilove, R. B.: Mathematical foundation of constructive solid geometry: General topology of closed regular sets, Tech. Memo. No. 27a, Production Automation Project, Univ. of Rochester,June 1978. (Available from CPA, 304 Kimball Hall, Cornell University, Ithaca, New York 14853.)Google Scholar
  2. [2]
    Requicha, A. A. G. and Voelcker, H. B.: Boolean Operations in Solid Modelling: Boundary Evaluation and Merging Algorithms, Proceedings of the IEEE, Vol. 73, No. 1, January 1985.Google Scholar
  3. [3]
    Roth, S. D.: Ray casting for modeling solids, Computer Graphics and Image Processing, vol. 18, no. 2, pp. 109–144, February 1982.CrossRefGoogle Scholar
  4. [4]
    Jansen, F. W.: Pixel-Parallel hidden-surface algorithm for Constructive Solid Geometry, Proceedings Eurographics’86, pp. 29–40, Elseviers Science Publishers, Amsterdam. 1986.Google Scholar
  5. [5]
    Jansen, F. W.: CSG hidden-surface algorithms for VLSI hardware systems, in Advances on Graphics Hardware I W. Strasser (ed.), Springer Verlag, 1987.Google Scholar
  6. [6]
    Jansen, F. W.: Solid modelling with faceted primitives, Delft University Press, Doctoral Dissertation, Technische Universiteit Delft, The Netherland, September 1987.Google Scholar
  7. [7]
    Kedem, G. and Ellis, J. L.: The ray-casting machine, Proc. ICCD84, pp. 533–538, October 1984.Google Scholar
  8. [8]
    Kedem, G. and Ellis, J.: The Ray Casting Machine Prototype, International Conference on Parallel Processing for Computer Vision and Display, University of Leeds, UK, January 1988.Google Scholar
  9. [9]
    Rossignac, J. R. and Requicha, A. A. G.: Depth buffering display techniques for constructive solid geometry, IEEE, Computer Graphics and Applications, vol. 6, no. 9, pp. 29–39, September 1986.CrossRefGoogle Scholar
  10. [10]
    Rossignac, J. R. and Voelcker, H. B.: Active Zones in CSG for Accelerating Boundary Evaluation, Redundancy Elimination, Interference Detection, and Shading Algorithms, ACM Transactions on Graphics, vol. 8, no. 1, pp. 51–87, January 1989.CrossRefGoogle Scholar
  11. [11]
    Woodward, C.: Methods for computer-aided design of free-form objects, PhD dissertation, Mathematics and Computer Science Series number 56, Helsinki University of Technology, Finland. 1990.Google Scholar
  12. [12]
    Goldfeather, J., Hultquist, J. P. M. and Fuchs, H.: Fast Constructive Solid Geometry Display in the Pixel-Power Graphics System, ACM SIGGRAPH’86 Proc., Computer Graphics, vol. 20, no. 4, August 1986.Google Scholar
  13. [13]
    Tilove, R. B.: Set membership classification: A unified approach to geometric intersection problems, IEEE Trans. on Computers, vol. C-29, no. 10, pp. 874–883, October 1980.MathSciNetGoogle Scholar
  14. [14]
    Goldfeather, J., Molnar, S., Turk, G. and Fuchs, H.: Near Real-Time CSG Rendering using Tree Normalization and Geometric Pruning, IEEE Computer Graphics and Applications, vol. 9, no. 3, pp. 20–28. May 1989.Google Scholar
  15. [15]
    Epstein, D., Jansen, F. and Rossignac, J.: Z-buffer rendering from CSG: The Trickle Algorithm, IBM Research Report RC15182, IBM Thomas J. Watson Research Center, Yorktown Heights, New York, December 1989.Google Scholar

Copyright information

© EUROGRAPHICS The European Association for Computer Graphics 1992

Authors and Affiliations

  • Jaroslaw R. Rossignac
  • Jeffrey Wu

There are no affiliations available

Personalised recommendations