Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Boolean Operations on Free-form Solids CS284, Fall 2004 Seung Wook Kim.

Similar presentations


Presentation on theme: "Introduction to Boolean Operations on Free-form Solids CS284, Fall 2004 Seung Wook Kim."— Presentation transcript:

1 Introduction to Boolean Operations on Free-form Solids CS284, Fall 2004 Seung Wook Kim

2 Boolean Operations A natural way of constructing complex solid objects out of simpler primitives Many artificial objects can be constructed out of simple parts - cylinders, rectangular blocks, spheres, etc. Very common in CAGD

3 Constructive Solid Geometry (CSG) Solids as expressions of Boolean operations of primitive solids Algorithms implemented directly on the representation

4 Boundary Representations (B-Rep.) Solids as a set of vertices, edges and faces with topological relations among them Boolean operations implemented in the representation framework

5 Boolean Operations in B-Rep. Polyhedral solids –Calculating plane-plane intersection only –Generating a single line Free-form solids –Intersection between free-form surfaces –A high degree algebraic space curve

6 1999 International Journal of Computational Geometry & Applications BOOLE: A Boundary Evaluation System for Boolean Combinations of Sculptured Solids S. Krishnan And D. Manocha, M. Gopi, T. Culver, J.Keyser

7 BOOLE: Functional Module

8 BOOLE: Algorithm - stage 1 Computing bounding box overlap for each patch and Pruning

9 BOOLE: Algorithm - stage 2 Paring remained patches

10 BOOLE: Algorithm - stage 3 & 4

11 BOOLE: Algorithm - stage 5 Partitioning the boundary into components

12 BOOLE: Algorithm - stage 6 Classifying components

13 BOOLE: Algorithm - stage 7

14 BOOLE: Surface Intersection 1.Given the two parametric surfaces, eliminate two of the variables (using Dixon’s resultant) 2.Obtain the intersection curve in the plane as a matrix polynomial 3.Compute a starting point on each component of the intersection (using curve-surface intersection and loop detection algorithms) 4.Subdivide the domain of the surface into regions such that each sub-region has at most one curve 5.For each starting point, trace the intersection curve

15 BOOLE: Surface Intersection - cont’ * Reference: SHANKAR KRISHNAN and DINESH MANOCHA, An Efficient Surface Intersection Algorithm Based on Lower-Dimensional Formulation, ACM Transactions on Graphics, Vol. 16, No. 1, January 1997, Pages 74–106.

16 BOOLE: Implementation Layers

17 2001 SIGGRAPH Approximate Boolean Operations on Free-form Solids Henning Biermann Daniel Kristjansson Denis Zorin

18 Approximate Boolean Operations Generating a control mesh for intersection of surfaces (approximating the result) Optimizing the parameterization of the new surface with respect to the original surfaces Minimizing the size and optimizing the quality of the new control mesh

19 Approximate Operations: Algorithm step 1 Compute an approximate intersection curve, finding its images in each of the two parametric domains of the original surfaces.

20 Approximate Operations : Algorithm step 2 Construct the connectivity of the control mesh for the result

21 Approximate Operations : Algorithm step 3 Optimize the parameterization of the result over the original domains

22 Approximate Operations : Algorithm step 4 Determine geometric positions for the control points of the result using hierarchical fitting

23 Approximate Operations Subtracting a cylinder from the mannequin head

24 * Additional reference: Boolean Operations on Open Set Toshiaki Satoh, Boolean Oerations on Sets Using Surface Data, 1991 ACM 089791-427-9/91/0006/0119 Required to: – solve self-intersecting solid problems – generate offset solid objects


Download ppt "Introduction to Boolean Operations on Free-form Solids CS284, Fall 2004 Seung Wook Kim."

Similar presentations


Ads by Google