From 70f8536e6f61ba8b8d8cea60a7d4e998b92ac9ed Mon Sep 17 00:00:00 2001 From: Paolo Cignoni cignoni Date: Fri, 19 Mar 2010 22:58:06 +0000 Subject: [PATCH] Converted to the new style with the Mark functions outside the trimesh class --- src/fgt/editpaint/editpaint.cpp | 20 +++++++++---------- src/fgt/filter_trioptimize/curvedgeflip.h | 2 +- .../editalign/align/AlignPair.cpp | 2 +- .../parametrizator.h | 6 +++--- .../filter_zippering/filter_zippering.cpp | 12 +++++------ 5 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/fgt/editpaint/editpaint.cpp b/src/fgt/editpaint/editpaint.cpp index 962ff0a39..d1df93e9f 100644 --- a/src/fgt/editpaint/editpaint.cpp +++ b/src/fgt/editpaint/editpaint.cpp @@ -75,8 +75,8 @@ bool EditPaintPlugin::StartEdit(MeshModel& m, GLArea * parent) m.updateDataMask(MeshModel::MM_VERTCOLOR); tri::UpdateColor::VertexConstant(m.cm,Color4b(150, 150, 150, 255)); } - m.cm.InitFaceIMark(); - m.cm.InitVertexIMark(); + tri::InitFaceIMark(m.cm); + tri::InitVertexIMark(m.cm); parent->getCurrentRenderMode().colorMode=vcg::GLW::CMPerVert; @@ -310,12 +310,12 @@ void EditPaintPlugin::Decorate(MeshModel &m, GLArea * gla) case COLOR_SMOOTH: paintbox->getUndoStack()->beginMacro("Color Smooth"); smoothed_vertices.clear(); - m.cm.UnMarkAll(); + tri::UnMarkAll(m.cm); break; case MESH_SMOOTH: paintbox->getUndoStack()->beginMacro("Mesh Smooth"); smoothed_vertices.clear(); - m.cm.UnMarkAll(); + tri::UnMarkAll(m.cm); break; default : @@ -858,7 +858,7 @@ inline void EditPaintPlugin::updateSelection(MeshModel &m, vector< pairsize() == 0) { CMeshO::FaceIterator fi; @@ -955,7 +955,7 @@ inline void EditPaintPlugin::updateSelection(MeshModel &m, vector< pairV(j))) + else if (!tri::IsMarked(m.cm,fac->V(j))) { vd.position.setX((int)p[j].x()); vd.position.setY((int)p[j].y()); pair data(fac->V(j), vd); @@ -963,7 +963,7 @@ inline void EditPaintPlugin::updateSelection(MeshModel &m, vector< pairV(j)->N(); - m.cm.Mark(fac->V(j)); + tri::Mark(m.cm,fac->V(j)); } } @@ -980,16 +980,16 @@ inline void EditPaintPlugin::updateSelection(MeshModel &m, vector< pairpush_back(fac); surround.clear(); for (int lauf=0; lauf<3; lauf++) getSurroundingFacesVF(fac,lauf,&surround); for (unsigned int lauf3=0; lauf3 0) { PosType newpos(&*fi, i); - Insert(heap, newpos, m.IMark()); + Insert(heap, newpos, tri::IMark(m)); } } }; // end CurvEdgeFlip class diff --git a/src/meshlabplugins/editalign/align/AlignPair.cpp b/src/meshlabplugins/editalign/align/AlignPair.cpp index 3c955bcd1..cb4ea265b 100644 --- a/src/meshlabplugins/editalign/align/AlignPair.cpp +++ b/src/meshlabplugins/editalign/align/AlignPair.cpp @@ -237,7 +237,7 @@ bool AlignPair::InitFix(AlignPair::A2Mesh *fm, A2Grid &u, int PreferredGridSize) { - fm->InitFaceIMark(); + tri::InitFaceIMark(*fm); Box3d bb2=fm->bbox; // double MinDist= fm->bbox.Diag()*pp.MinDistPerc; diff --git a/src/meshlabplugins/filter_isoparametrization/parametrizator.h b/src/meshlabplugins/filter_isoparametrization/parametrizator.h index 4ff320ea5..c2b606f78 100644 --- a/src/meshlabplugins/filter_isoparametrization/parametrizator.h +++ b/src/meshlabplugins/filter_isoparametrization/parametrizator.h @@ -169,9 +169,9 @@ private: void InitIMark() { - base_mesh.IMark()=0; - base_mesh.InitFaceIMark(); - base_mesh.InitVertexIMark(); + vcg::tri::IMark(base_mesh)=0; + vcg::tri::InitFaceIMark(base_mesh); + vcg::tri::InitVertexIMark(base_mesh); } diff --git a/src/meshlabplugins/filter_zippering/filter_zippering.cpp b/src/meshlabplugins/filter_zippering/filter_zippering.cpp index 8f01d6e9c..199b5ac97 100644 --- a/src/meshlabplugins/filter_zippering/filter_zippering.cpp +++ b/src/meshlabplugins/filter_zippering/filter_zippering.cpp @@ -41,7 +41,7 @@ //#define REDUNDANCY_ONLY 1 //#define REFINE_PATCH_ONLY 1 #define MAX_LOOP 150 - +using namespace vcg; // Constructor usually performs only two simple tasks of filling the two lists // - typeList: with all the possible id of the filtering actions // - actionList with the corresponding actions. If you want to add icons to your filtering actions you can do here by construction the QActions accordingly @@ -156,7 +156,7 @@ bool FilterZippering::checkRedundancy( CMeshO::FacePointer face, for ( unsigned int j = 0; j < edge_samples.size(); j ++ ) { CMeshO::FacePointer nearestF = 0; - vcg::tri::FaceTmark markerFunctor; markerFunctor.SetMesh(&m->cm); m->cm.UnMarkAll(); + vcg::tri::FaceTmark markerFunctor; markerFunctor.SetMesh(&m->cm); tri::UnMarkAll(m->cm); vcg::face::PointDistanceBaseFunctor PDistFunct; MeshFaceGrid::ScalarType dist = max_dist; MeshFaceGrid::CoordType closest; //Search closest point on A @@ -185,7 +185,7 @@ bool FilterZippering::checkRedundancy( CMeshO::FacePointer face, // samples on A for ( int k = 0; k < edge_samples.size(); k ++ ) { CMeshO::FacePointer nearestF = 0; - vcg::tri::FaceTmark markerFunctor; markerFunctor.SetMesh(&m->cm); m->cm.UnMarkAll(); + vcg::tri::FaceTmark markerFunctor; markerFunctor.SetMesh(&m->cm); tri::UnMarkAll(m->cm); vcg::face::PointDistanceBaseFunctor PDistFunct; MeshFaceGrid::ScalarType dist = max_dist; MeshFaceGrid::CoordType closest; //Search closest point on A @@ -222,7 +222,7 @@ bool FilterZippering::simpleCheckRedundancy( CMeshO::FacePointer f, //face //search for max_edge float max_edge = std::max( vcg::Distance(f->P(0),f->P(1)), std::max( vcg::Distance(f->P(1),f->P(2)), vcg::Distance(f->P(2),f->P(0)) ) ); float dist = max_dist; CMeshO::FacePointer nearestF = 0; vcg::Point3 closest; - vcg::tri::FaceTmark markerFunctor; markerFunctor.SetMesh(&m->cm); m->cm.UnMarkAll(); + vcg::tri::FaceTmark markerFunctor; markerFunctor.SetMesh(&m->cm); UnMarkAll(m->cm); vcg::face::PointDistanceBaseFunctor PDistFunct; nearestF = grid.GetClosest(PDistFunct, markerFunctor, qp, max_dist, dist, closest); if (nearestF == 0) return false; //too far away @@ -622,9 +622,9 @@ bool FilterZippering::applyFilter(QAction *filter, MeshDocument &md, RichParamet /*end*/ a->cm.face.EnableFFAdjacency(); vcg::tri::UpdateTopology::FaceFace(a->cm); - a->cm.face.EnableMark(); a->cm.UnMarkAll(); + a->cm.face.EnableMark(); tri::UnMarkAll(a->cm); b->cm.face.EnableFFAdjacency(); vcg::tri::UpdateTopology::FaceFace(b->cm); - b->cm.face.EnableMark(); b->cm.UnMarkAll(); + b->cm.face.EnableMark(); tri::UnMarkAll(b->cm); vcg::tri::UpdateNormals::PerFaceNormalized(a->cm); vcg::tri::UpdateFlags::FaceProjection(a->cm); vcg::tri::UpdateNormals::PerVertexNormalized(a->cm); vcg::tri::UpdateNormals::PerFaceNormalized(b->cm); vcg::tri::UpdateFlags::FaceProjection(b->cm); vcg::tri::UpdateNormals::PerVertexNormalized(b->cm); CMeshO::ScalarType epsilon = par.getAbsPerc("distance");