solved bug non-referenced vertices in hc laplacian smoothing

This commit is contained in:
alemuntoni 2019-12-18 15:47:12 +01:00
parent 73efe508d0
commit 50165d7b03
1 changed files with 5 additions and 3 deletions

View File

@ -604,9 +604,11 @@ So if
for (vi = m.vert.begin(); vi != m.vert.end(); ++vi) for (vi = m.vert.begin(); vi != m.vert.end(); ++vi)
{ {
TD[*vi].dif /= (float)TD[*vi].cnt; if (TD[*vi].cnt > 0){
if (!SmoothSelected || (*vi).IsS()) TD[*vi].dif /= (float)TD[*vi].cnt;
(*vi).P() = TD[*vi].sum - (TD[*vi].sum - (*vi).P()) * beta + (TD[*vi].dif) * (1.f - beta); if (!SmoothSelected || (*vi).IsS())
(*vi).P() = TD[*vi].sum - (TD[*vi].sum - (*vi).P()) * beta + (TD[*vi].dif) * (1.f - beta);
}
} }
} // end for step } // end for step
}; };