210 likes | 359 Views
University of Burgundy. Boolean Operations on Subdivision Surfaces. Yohan FOUGEROLLE MS 2001/2002 Sebti FOUFOU Marc Neveu . Introduction. A. B. A B. A - B. B - A. A B. Introduction. Intersection is needed to deduce other boolean operations. Sphere Cube.
E N D
University of Burgundy Boolean Operations on Subdivision Surfaces Yohan FOUGEROLLE MS 2001/2002 Sebti FOUFOU Marc Neveu
Introduction A B A B A - B B - A A B
Introduction Intersection is needed to deduce other boolean operations Sphere Cube Sphere Cube Cube - Sphere Sphere - Cube
: Control Points : Mix functions (triangular B-Splines) Subdivision Surfaces • Subdivision Surfaces as NURBS Alternative • Now very used in CAD and animation movies (Geri’s Game, Monster Inc…) • Arbitrary Meshes • Easy patches • Simple use with small datas • Numerous subdivision rules with different properties • Work on Triangular parametric domain
1 3 1 1 1 1 1 1 3 Vertex Mask Edge Mask with LOOP Scheme Vi ,1 Vi ,6 Uniform Approximating scheme Vi +1,1 Vi +1,6 Vi +1,2 Vi ,5 VR Vi +1,5 Vi ,2 Vi +1,3 Vi +1,4 Vi ,3 Vi ,4 New Control Points inserted Each face generates 4 faces
Loop Surfaces Example Surface evolution with subdivision level Limit surface
« Wrong » Intersections General problem : No location/existence criterion Subdivision(s) Current Control Mesh Initial mesh Subdivision(s)
Intersection Approximation No suitable mathematical criterion Approximation to level N N subdivisions Intersection(s) curve(s) Adaptative subdivision to refine the result
A A C A A∩B A C A Surfaces splitting • Two steps : • Split along the intersection curve • labelling to separate each part of the object (inside/outside the other object) A C
Reconstruction • Depending on boolean operation : • Faces are stored in the result object • Merging operation along the intersection curve
Splitting and labelling operations Interior faces Exterior faces
Results intersection Union Sphere - Torus Torus- Sphere
subdivision subdivision one point / edge Adaptative Subdivision Intersection curve
Mesh updating Update all on triangular faces With barycenter triangulation
Example of adaptative subdivision Approximate Boolean Operations on Free-Form Solids Biermann, Kristjanson, Zorin CAGD Oslo 2000
Future works • Minimize the surface perturbations due to adaptative subdivision and triangulation. • Update the intersection algorithm to manage non triangular (planar) faces. • Use a hierarchy data structure ( tree ) to store faces and decrease the intersection algorithm complexity. • Reverse the process to store a smaller mesh.
Conclusion • Geometrical approach of intersection one domain is needed to compute boolean operation. • Works with non convex 3D objects and 2-manifold. • One restriction : an edge must always separate two faces at most.