From d016145d1ec15da3fcfb2ee252678bbc74cc2669 Mon Sep 17 00:00:00 2001 From: Paolo Cignoni cignoni Date: Tue, 22 Nov 2005 11:40:14 +0000 Subject: [PATCH] Now using a single method to compute normals (PerVertePerFace instead PerVertex then PerFace) --- src/meshlab/meshmodel.cpp | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/meshlab/meshmodel.cpp b/src/meshlab/meshmodel.cpp index 93cbce4a1..8a2145265 100644 --- a/src/meshlab/meshmodel.cpp +++ b/src/meshlab/meshmodel.cpp @@ -23,6 +23,9 @@ /**************************************************************************** History $Log$ +Revision 1.9 2005/11/22 11:40:14 glvertex +Now using a single method to compute normals (PerVertePerFace instead PerVertex then PerFace) + Revision 1.8 2005/11/21 22:09:35 cignoni added missing enablenormal @@ -34,12 +37,13 @@ Added copyright info #include "meshmodel.h" #include #include + bool MeshModel::Open(const char *filename) { int mask; vcg::tri::io::ImporterPLY::LoadMask(filename, mask); - if(mask&ply::PLYMask::PM_VERTQUALITY) printf("Has Vertex Quality\n"); - if(mask&ply::PLYMask::PM_FACEQUALITY) printf("Has Face Quality\n"); + if(mask&ply::PLYMask::PM_VERTQUALITY) qDebug("Has Vertex Quality\n"); + if(mask&ply::PLYMask::PM_FACEQUALITY) qDebug("Has Face Quality\n"); if(mask&ply::PLYMask::PM_FACECOLOR) qDebug("Has Face Color\n"); if(mask&ply::PLYMask::PM_VERTCOLOR) qDebug("Has Vertex Color\n"); if(mask&ply::PLYMask::PM_WEDGTEXCOORD) @@ -47,14 +51,15 @@ bool MeshModel::Open(const char *filename) qDebug("Has Wedge Text Coords\n"); cm.face.EnableWedgeTex(); } - int ret=vcg::tri::io::ImporterPLY::Open(cm,filename); - qDebug("FAce 0 %f %f \n",cm.face[0].WT(0).u(),cm.face[0].WT(0).v()); - vcg::tri::UpdateBounding::Box(cm); - vcg::tri::UpdateNormals::PerVertex(cm); - cm.face.EnableNormal(); - vcg::tri::UpdateNormals::PerFace(cm); - + + cm.face.EnableNormal(); + int ret = vcg::tri::io::ImporterPLY::Open(cm,filename); + + qDebug("Face 0 %f %f \n",cm.face[0].WT(0).u(),cm.face[0].WT(0).v()); + + vcg::tri::UpdateBounding::Box(cm); + vcg::tri::UpdateNormals::PerVertexPerFace(cm); return ret==::vcg::ply::E_NOERROR; }