Active zones in CSG for accelerating boundary evaluation, redundancy elimination, interference detection, and shading algorithms

Solids defined by Boolean combinations of solid primitives may be represented in constructive solid geometry (CSG) as binary trees. Most CSG-based algorithms (e.g., for boundary evaluation, graphic shading, interference detection) do various forms of set-membership classification by traversing the tree associated with the solid. These algorithms usually generate intermediate results that do not contribute to the final result, and hence may be regarded as redundant and a source of inefficiency. To reduce such inefficiencies, we associate with each primitive A in a tree S an active zone Z that represents the region of space where changes to A affect the solid represented by S, and we use a representation of Z instead of S for set-membership classification. In the paper we develop a mathematical theory of active zones, prove that they correspond to the intersection of certain nodes of the original trees, and show how they lead to efficient new algorithms for boundary evaluation, for detecting and eliminating redundant nodes in CSG trees, for interference (null-set) detection, and for graphic shading.

[1]  Yukinori Kakazu,et al.  RESEARCH ON 3-D GEOMETRIC MODELING BY SWEEP PRIMITIVES , 1982 .

[2]  Herbert B. Voelcker,et al.  Graphical simulation & automatic verification of NC machining programs , 1986, Proceedings. 1986 IEEE International Conference on Robotics and Automation.

[3]  Jaroslaw Roman Rossignac Blending and offsetting solid models (cad/cam, computational geometry, representations, curves, surfaces, approximation) , 1985 .

[4]  Frederick J. Hill,et al.  Introduction to Switching Theory and Logical Design , 1968 .

[5]  Aristides A. G. Requicha,et al.  Efficient editing of solid models by exploiting structural and spatial locality , 1984, Comput. Aided Geom. Des..

[6]  R. Brayton Factoring logic functions , 1987 .

[7]  Claude E. Shannon,et al.  A symbolic analysis of relay and switching circuits , 1938, Transactions of the American Institute of Electrical Engineers.

[8]  Jarek Rossignac,et al.  Constraints in constructive solid geometry , 1987, I3D '86.

[9]  Susan Briedenbach DI-3000 Debuts on PC Card , 1986, IEEE Computer Graphics and Applications.

[10]  Stephen Alan Cameron,et al.  Modelling solids in motion , 1984 .

[11]  Stephen Cameron,et al.  Efficient Intersection Tests for Objects Defined Constructively , 1989, Int. J. Robotics Res..

[12]  Scott D. Roth,et al.  Ray casting for modeling solids , 1982, Comput. Graph. Image Process..

[13]  Frederik W. Jansen,et al.  Solid modelling with faceted primitives , 1987 .

[14]  Aristides A. G. Requicha,et al.  Algorithms for computing the volume and other integral properties of solids. II. A family of algorithms based on representation conversion and cellular approximation , 1982, CACM.

[15]  Robert B. Tilove A null-object detection algorithm for constructive solid geometry , 1984, CACM.

[16]  D. P. Peterson Boundary to constructive solid geometry mappings: a focus on 2D issues , 1986 .

[17]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[18]  Aristides A. G. Requicha,et al.  Offsetting operations in solid modelling , 1986, Comput. Aided Geom. Des..

[19]  Sergiu Rudeanu Boolean functions and equations , 1974 .

[20]  Donald L. Vossler Sweep-to-CSG Conversion Using Pattern Recognition Techniques , 1985, IEEE Computer Graphics and Applications.

[21]  A.A.G. Requicha,et al.  Boolean operations in solid modeling: Boundary evaluation and merging algorithms , 1985, Proceedings of the IEEE.

[22]  Jarke J. van Wijk,et al.  Ray tracing objects defined by sweeping a sphere , 1984, Comput. Graph..

[23]  A. Requicha,et al.  CONSTANT-RADIUS BLENDING IN SOLID MODELLING , 1984 .

[24]  Aristides A. G. Requicha,et al.  Mathematical Foundations of Constructive Solid Geometry: General Topology of Closed Regular Sets , 1978 .

[25]  Aristides A. G. Requicha,et al.  Algorithms for computing the volume and other integral properties of solids. I. known methods and open issues , 1982, CACM.

[26]  Hillyard The Build Group of Solid Modelers , 1982, IEEE Computer Graphics and Applications.

[27]  Stephen Cameron,et al.  A study of the clash detection problem in robotics , 1985, Proceedings. 1985 IEEE International Conference on Robotics and Automation.

[28]  Robert B. Tilove,et al.  Set Membership Classification: A Unified Approach to Geometric Intersection Problems , 1980, IEEE Transactions on Computers.

[29]  K. M. Quinlan,et al.  Reducing the effect of complexity on volume model evaluation , 1982 .

[30]  A. Requicha CONSTRUCTIVE SOLID GEOMETRY , 1977 .

[31]  Gershon Kedem,et al.  Computer Structures for Curve-Solid Classification in Geometric Modeling , 1984 .

[32]  William Joseph Fitzgerald,et al.  Solid modeling for production design , 1987 .

[33]  R. G. Bennetts,et al.  Introduction to Switching Theory and Logical Design , 1981 .

[34]  John R. Woodwark Eliminating redundant primitives from set-theoretic solid models by a consideration of constituents , 1988, IEEE Computer Graphics and Applications.

[35]  Russell H. Taylor,et al.  AML/X: A Programming Language for Design and Manufacturing , 1986, FJCC.

[36]  Aristides A. G. Requicha,et al.  Depth-Buffering Display Techniques for Constructive Solid Geometry , 1986, IEEE Computer Graphics and Applications.

[37]  Henry Fuchs,et al.  Fast constructive-solid geometry display in the pixel-powers graphics system , 1986, SIGGRAPH.

[38]  David C Anderson Closing the gap: A workstation-mainframe connection , 1986 .