Presentation is loading. Please wait.

Presentation is loading. Please wait.

Interactive Boolean Operations on Surfel-Bounded Solids Bart AdamsPhilip Dutré Katholieke Universiteit Leuven.

Similar presentations


Presentation on theme: "Interactive Boolean Operations on Surfel-Bounded Solids Bart AdamsPhilip Dutré Katholieke Universiteit Leuven."— Presentation transcript:

1 Interactive Boolean Operations on Surfel-Bounded Solids Bart AdamsPhilip Dutré Katholieke Universiteit Leuven

2 Goal: CSG on free-form solids A-B ABABABAB ABABABAB AB union, difference and intersectionunion, difference and intersection on free-form solidson free-form solids at interactive ratesat interactive rates

3 “Bond of Union” 90k surfels 94k surfels 8FPS

4 Related work Kristjansson et al. [2001]  subdivision surfaces Museth et al. [2002]  level set framework Pauly et al. [2003]  points and moving least squares surface ACM SIGGRAPH

5 Surfels are considered as small disks n position xposition x normal nnormal n radius rradius r position xposition x normal nnormal n radius rradius r x r surfels shown at half size

6 Three categories of surfels head surfels that lie completely helix helix surfels that lie completely head surfels with the other solid’s surface

7 Algorithm overview inside-outside partitioning classification of surfels resampling operator keep appropriate set of surfels Interactive loop Preprocess

8 Algorithm overview inside-outside partitioning classification of surfels resampling operator keep appropriate set of surfels Interactive loop Preprocess

9 For each solid an octree is constructed depth = 1 depth = 2 depth = 3

10 Classification of empty leaf cell as interior nsnsnsnss n s points away from the empty cell 

11 Classification of empty leaf cell as exterior nsnsnsnss n s points towards the empty cell 

12 Three types of leaf cells in the resulting octree InteriorBoundaryExterior

13 Partitioning of boundary cells using parallel planes P1P1P1P1 P2P2P2P2 All surfels between P 1 and P 2

14 P1P1P1P1 P2P2P2P2 s nsnsnsns The empty half-space of P 1 is interior n s points away from the empty space 

15 P1P1P1P1 P2P2P2P2 s nsnsnsns The empty half-space of P 2 is exterior n s points towards the empty space 

16 In 3D, the boundary cell is partitioned in three volumes Interior Boundary Exterior

17 Algorithm overview inside-outside partitioning classification of surfels resampling operator keep appropriate set of surfels Interactive loop Preprocess

18 Classification of surfels s 1 outside octrees 1 outside octree  outside s 2 in exterior cells 2 in exterior cell  outside s 3 in interior cells 3 in interior cell  inside s1s1s1s1 s2s2s2s2 s3s3s3s3 s5s5s5s5 s4s4s4s4

19 Classification of surfels boundary cell surfels s 4 and s 5 in empty half-spaces:surfels s 4 and s 5 in empty half-spaces:  s 4 outside  s 5 inside s5s5s5s5 s4s4s4s4

20 Classification of surfels s t –search for nearest neighbor surfel t –test disks of s and t for intersection surfel s between parallel planes:surfel s between parallel planes: boundary cell

21 Use octree as acceleration structure root node intersects with boundary cells  test children solid A solid B

22 Use octree as acceleration structure child node only intersects with exterior cells  all surfels outside solid A solid B

23 Use octree as acceleration structure child node intersects with boundary cells  test children solid A solid B

24 Use octree as acceleration structure leaf node only intersects with exterior cells  all surfels outside solid A solid B

25 Use octree as acceleration structure leaf node still intersects with boundary cells  test surfels individually solid A solid B

26 Inside-outside classification surfels classified in group 47% individual surfels not in boundary cells 26% surfels in empty space of boundary cells 22% surfels between parallel planes 5% 200k surfels

27 Inside-outside classification surfels classified in group 47% individual surfels not in boundary cells 26% surfels in empty space of boundary cells 22% surfels between parallel planes 5% NN search for only 5%, 80% of this 5% is intersecting 200k surfels

28 Algorithm overview keep appropriate set of surfels Interactive loop inside-outside partitioning Preprocess classification of surfels resampling operator

29 Algorithm overview inside-outside partitioning classification of surfels resampling operator keep appropriate set of surfels Interactive loop Preprocess

30 Resampling operator: motivation Include surfels Exclude surfels Resample surfels Intersection of two spheres

31 Resample surfel by smaller surfels clip surfels:clip surfels: –irregularly shaped surfels our method: resample surfels:our method: resample surfels: –surfel replaced by smaller surfels –only one type of primitive

32 Close-up of resampled surfels surfels shown at half size

33 Resampling results in sharp edges and corners 350k surfels 4.4FPS 230k surfels 46k surfels

34 Local smoothing eliminates sharp creases smoothing no smoothing 3.3FPS 250k surfels 650k surfels 340k surfels

35 “Bond of Union” 350k surfels 370k surfels 2FPS

36 Advantages fast classification sharp edges and corners only one type of primitive octree is easy to update Limitations partitioning might fail in case of incorrectly oriented surfels choice of parallel planes is not always optimal DiscussionDiscussion

37 ConclusionConclusion Contributions fast inside-outside test resampling operator Future work CSG operations on mixed polygon-surfel models implementation on GPU

38 AcknowledgementsAcknowledgements graphics group K.U.Leuven the reviewers aspirant F.W.O.-Vlaanderen

39

40 Remark: surfels are considered being disks, not just points enlarge bounding boxes for overlap tests

41 Remark: surfels are considered being disks, not just points translate planes in boundary cells

42 Choice of parallel planes is not always optimal

43 Comparison with the technique of Pauly et al. Pauly et al.Adams and Dutré Surface representation Points and MLS surface Disks NN search Kd-treeOctree + TINN Intersection curve Points on curve Disks intersect on curve Rendering Surface splatting extended with clipping Rendering of disks (any surfel rendering algorithm)

44 Surfels close to surface of other solid Inside with our technique, outside with the technique of Pauly et al. Solutions:  denser sampling  differential points (Kalaiah and Varshney)


Download ppt "Interactive Boolean Operations on Surfel-Bounded Solids Bart AdamsPhilip Dutré Katholieke Universiteit Leuven."

Similar presentations


Ads by Google