diff --git a/src/meshlabplugins/filter_screened_poisson/filter_screened_poisson.cpp b/src/meshlabplugins/filter_screened_poisson/filter_screened_poisson.cpp index c992484d1e..b7353ac7cb 100644 --- a/src/meshlabplugins/filter_screened_poisson/filter_screened_poisson.cpp +++ b/src/meshlabplugins/filter_screened_poisson/filter_screened_poisson.cpp @@ -197,7 +197,9 @@ std::map FilterScreenedPoissonPlugin::applyFilter( } else { MeshModelPointStream meshStream(md.mm()->cm); - _Execute >(&meshStream,md.mm()->cm.bbox,pm->cm,pp,cb); + Box3m bb; + bb.Add(md.mm()->cm.Tr, md.mm()->cm.bbox); + _Execute >(&meshStream,bb,pm->cm,pp,cb); } pm->updateBoxAndNormals(); md.setVisible(pm->id(),true); diff --git a/src/meshlabplugins/filter_screened_poisson/poisson_utils.h b/src/meshlabplugins/filter_screened_poisson/poisson_utils.h index 0680d605ff..babd45834a 100644 --- a/src/meshlabplugins/filter_screened_poisson/poisson_utils.h +++ b/src/meshlabplugins/filter_screened_poisson/poisson_utils.h @@ -535,9 +535,6 @@ int _Execute( template void PoissonClean(MeshType &m, bool scaleNormal, bool cleanFlag) { - vcg::tri::UpdatePosition::Matrix(m, m.Tr,true); - vcg::tri::UpdateBounding::Box(m); - m.Tr.SetIdentity(); vcg::tri::UpdateNormal::NormalizePerVertex(m); if(cleanFlag) {