13.07.2015 Views

CPU-GPU Algorithms for Triangular Surface Mesh Simplification

CPU-GPU Algorithms for Triangular Surface Mesh Simplification

CPU-GPU Algorithms for Triangular Surface Mesh Simplification

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4 Suzanne M. Shontz and Dragos M. NistorFig. 1. An edge-collapse on e = (v 1, v 2).of a mesh M = (vertices, elements), the <strong>CPU</strong> simplifies the first k% of theelements, and the <strong>GPU</strong> simplifies the remaining elements. The workload splittingis per<strong>for</strong>med once as a preprocessing step. Locks are used to ensure thatconflicting updates are not made in the simplification process.Since edge-collapse operations should be per<strong>for</strong>med uni<strong>for</strong>mly on the mesh,we mark the elements which have been affected by previous edge collapses sothat they do not take part in subsequent edge-collapse operations.Define N(T ) <strong>for</strong> T = (v a , v b , v c ) to be elements which contain any of thevertices v a , v b , or v c . If edge e = (v 1 , v 2 ) between elements T 1 = (v 1 , v 2 , v 3 )and T 2 = (v 4 , v 2 , v 1 ), <strong>for</strong> example, has been collapsed, then the elements inN(T 1 )∪N(T 2 ) are considered affected. The elements shaded in gray in Figure 2would be considered affected if edge (v 1 , v 2 ) were collapsed.Fig. 2. Elements considered affected by edge-collapse of (v 1, v 2).Since each edge-collapse operation causes neighboring elements to becomeaffected, there is a hard limit on the number of edge-collapse operations,and on the amount of simplification per<strong>for</strong>med per iteration of the algorithm.Additional simplification may be obtained by per<strong>for</strong>ming additional iterationsof the algorithms.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!