I recently committed a version of the laplacian smooth that preserves
the shape of the surface. The update of the vertex position is done
only if the average displacement of normals of adjacent faces (from
old to new faces) is less than a given threshold.
The class for flip planar (PlanarEdgeFlip) now contains an additional
parameter template, which allows you to set the function to calculate
the quality of triangles.
Now I am proceeding with the development of mesh improvement by edge
flips based on curvature, trying to avoid the use of VF adjacency. I
modified class CVertexO locally, in order to make available fields H
and K (I added to Curvaturef template parameters) and to test the
changes. For now I am holding the parameter A in the quality field of
vertex, of course it is only a temporary solution, waiting the
availability of fields for the curvature, scheduled for version 1.2 of
meshlab. With some fixing bugs, the new code should work. Obviously,
this change can not be committed without the changes I made locally.
Michele Onnis
|