We also tried the alternative of letting contain all edges of . This approach is elegant since the initial subdivision surface has the same geometry as the phase 2 surface. However, this approach seems to unnecessarily slow down the optimization, and occasionally leads to poor energy minima. In such a scheme, we would first perform iterations of local subdivision. As the mesh is subdivided, we need only keep the neighborhood defining the region of the subdivision surface onto which the point projects.
Local subdivision is equivalent to midpoint bisection search, and has linear convergence.
After a few subdivision steps, the local neighborhood usually becomes regular, with all vertices being smooth and of valence 6. An obvious approach is to tag not only edges, but also vertices and faces of the mesh.