boolean operations on subdivision surfaces
play

Boolean Operations on Subdivision Surfaces Yohan FOUGEROLLE MS - PowerPoint PPT Presentation

Boolean Operations on Subdivision Surfaces Yohan FOUGEROLLE MS 2001/2002 Sebti FOUFOU University of Marc Neveu Burgundy Introduction A B A B A - B B - A A B Introduction Intersection is needed to deduce other Sphere


  1. Boolean Operations on Subdivision Surfaces Yohan FOUGEROLLE MS 2001/2002 Sebti FOUFOU University of Marc Neveu Burgundy

  2. Introduction A B A ∩ B A - B B - A A ∪ B

  3. Introduction Intersection is needed to deduce other Sphere ∩ boolean operations Cube Sphere ∪ Cube Cube - Sphere Sphere - Cube

  4. 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 C : Control Points β I , I N β : Mix functions (triangular B- Splines)

  5. LOOP Scheme V i ,1 V i ,6 Uniform Approximating scheme V i +1,1 V i +1,6 α + + + + + + V i +1,2 r r r r r r r ( n ) * V V ... V 3 * V 3 * V V V V R V i ,5 + r 1 = + = 1 2 n r 1 − + V V i i 1 i 1 V i ,2 α + i ( n ) n V i +1,5 8 1 3 V i +1,3 V i +1,4 V i ,3 1 V i ,4 1 α ( n ) 1 1 New Control Points inserted 1 1 3 Vertex Mask Edge Mask 2  π   2  +   3 2 * cos   5  n  −   n ( 1 a ( n )) = − α = a ( n ) ( n ) with Each face generates 4 faces 8 64 a ( n )

  6. Loop Surfaces Example Surface evolution with subdivision level Limit surface

  7. « Wrong » Intersections General problem : No location/existence criterion Subdivision(s) Current Control Mesh Initial mesh Subdivision(s)

  8. Intersection Approximation No suitable mathematical criterion Approximation to level N � N subdivisions � Intersection(s) curve(s) � Adaptative subdivision to refine the result

  9. Surfaces splitting Two steps : Split along the intersection curve C ⊂ A A A A ∩ B labelling to separate each part of the object (inside/outside the other object) A C C ⊂ A A

  10. Reconstruction Depending on boolean operation : Faces are stored in the result object Merging operation along the intersection curve

  11. Example

  12. Intersection curve example

  13. Splitting and labelling operations Interior Exterior faces faces

  14. Results intersection Union Sphere - Torus Torus- Sphere

  15. Adaptative Subdivision Intersection curve subdivision subdivision one point / edge

  16. Mesh updating Update all on triangular faces With barycenter triangulation

  17. Example of adaptative subdivision Approximate Boolean Operations on Free-Form Solids Biermann, Kristjanson, Zorin CAGD Oslo 2000

  18. 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.

  19. 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.

Recommend


More recommend