Regularized Boolean operations have been widely used in 3D modeling systems.However,evaluating Boolean operations may be quite numerically unstable and time consuming,especially for iterated set operations.A novel and unified technique is proposed in this paper for computing single and iterated set operations efficiently,robustly and exactly.An adaptive octree is combined with a nested constructive solid geometry(CSG) tree by this technique.The intersection handling is restricted to the cells in the octree where intersection actually occurs.Within those cells,a CSG tree template is instanced by the surfaces and the tree is converted to plane-based binary space partitioning(BSP) for set evaluation;Moreover,the surface classification is restricted to the cells in the octree where the surfaces only come from a model and are within the bounding- boxes of other polyhedrons.These two ways bring about the efficiency and scalability of the operations,in terms of runtime and memory.As all surfaces in such a cell have the same classification relation,they are classified as a whole.Robustness and exactness are achieved by integrating plane-based geometry representation with adaptive geometry predicate technique in intersection handling,and by applying divide-and-conquer arithmetic on surface classification.Experimental results demonstrate that the proposed approach can guarantee the robustness of Boolean computations and runs faster than other existing approaches.
Regularized Boolean operations have been widely used in 3D modeling systems. However, evaluating Boolean operations may be quite numerically unstable and time consuming, especially for iterated set operations. A novel and unified technique is proposed in this paper for computing single and iterated set operations efficiently, robustly and exactly. An adaptive octree is combined with a nested constructive solid geometry (CSG) tree by this technique. The intersection handling is restricted to the cells in the octree where intersection actually occurs. Within those cells, a CSG tree template is instanced by the surfaces and the tree is converted to planebased binary space partitioning (BSP) for set evaluation; Moreover, the surface classification is restricted to the ceils in the octree where the surfaces only come from a model and are within the bounding-boxes of other polyhedrons. These two ways bring about the efficiency and scalability of the operations, in terms of runtime and memory. As all surfaces in such a cell have the same classification relation, they are classified as a whole. Robustness and exactness are achieved by integrating plane-based geometry representation with adaptive geometry predicate technique in intersection handling, and by applying divide-and-conquer arithmetic on surface classification. Experimental results demonstrate that the proposed approach can guarantee the robustness of Boolean computations and runs faster than other existing approaches.