From a8af7df5d2d282be8553f3d995845f63433f0513 Mon Sep 17 00:00:00 2001 From: Paolo Cignoni cignoni Date: Fri, 1 Jun 2007 09:19:24 +0000 Subject: [PATCH] Added MeshDocument and computation of VertexBorderFlags when asking border flags --- src/meshlab/meshmodel.h | 42 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/src/meshlab/meshmodel.h b/src/meshlab/meshmodel.h index 6f3940ecc..173abf432 100644 --- a/src/meshlab/meshmodel.h +++ b/src/meshlab/meshmodel.h @@ -23,6 +23,9 @@ /**************************************************************************** History $Log$ +Revision 1.35 2007/06/01 09:19:24 cignoni +Added MeshDocument and computation of VertexBorderFlags when asking border flags + Revision 1.34 2007/04/16 09:24:37 cignoni ** big change ** Added Layers managemnt. @@ -79,7 +82,7 @@ abstract pointer to fileformat's dependent additional info added #include #include #include - +#include using namespace vcg; using namespace std; @@ -237,6 +240,8 @@ public: { if(currentDataMask& MM_FACETOPO) tri::UpdateFlags::FaceBorderFromFF(cm); else tri::UpdateFlags::FaceBorderFromNone(cm); + tri::UpdateFlags::VertexBorderFromFace(cm); + currentDataMask |= MM_BORDERFLAG; } if( ( (neededDataMask & MM_WEDGTEXCOORD)!=0) && (currentDataMask& MM_WEDGTEXCOORD)==0) @@ -262,6 +267,7 @@ public: } }; + class RenderMode { public: @@ -293,4 +299,38 @@ public: } }; +class MeshDocument +{ +public : +MeshDocument() + {currentMesh = NULL; + } + ~MeshDocument() + { + foreach(MeshModel *mmp, meshList) + delete mmp; + } + + void setCurrentMesh(unsigned int i) + { + assert(i>=0 && i < meshList.size()); + currentMesh=meshList.at(i); + } + + MeshModel *mm() { + return currentMesh; + } + + QList meshList; + +void addMesh(MeshModel *mm) +{ + meshList.push_back(mm); + currentMesh=meshList.back(); +} + +private: + MeshModel *currentMesh; +}; + #endif