diff --git a/src/common/ml_mesh_type.h b/src/common/ml_mesh_type.h index 9c1b39610..6b139ccaa 100644 --- a/src/common/ml_mesh_type.h +++ b/src/common/ml_mesh_type.h @@ -150,6 +150,30 @@ public : bb.Add(Tr,bbox); return bb; } + + CMeshO() : + vcg::tri::TriMesh< vcg::vertex::vector_ocf, vcg::face::vector_ocf >(), + sfn(0), svn(0), pvn(0), pfn(0) + { + } + + CMeshO(CMeshO& oth) : CMeshO() { + vcg::tri::Append::Mesh(*this, oth); + } + + //TODO need to change this + CMeshO(CMeshO&& oth) : CMeshO() { + //I could take everything from oth and place it in + //this mesh + vcg::tri::Append::Mesh(*this, oth); + } + + //TODO should change also this and use the copy&swap idiom + CMeshO& operator=(CMeshO& oth) { + Clear(); + vcg::tri::Append::Mesh(*this, oth); + return *this; + } }; #endif