From 122293b2c0ddfbb6539513fafa5ba483a815fd12 Mon Sep 17 00:00:00 2001 From: Martin Schultz Date: Thu, 8 Dec 2016 18:17:11 +0100 Subject: [PATCH] added copy constructor to PolyMesh_ArrayKernelT and TriMesh_ArrayKernelT --- src/OpenMesh/Core/Mesh/PolyMesh_ArrayKernelT.hh | 16 ++++++++++++++-- src/OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh | 16 ++++++++++++++-- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/src/OpenMesh/Core/Mesh/PolyMesh_ArrayKernelT.hh b/src/OpenMesh/Core/Mesh/PolyMesh_ArrayKernelT.hh index 3012c266..16f8f5c8 100644 --- a/src/OpenMesh/Core/Mesh/PolyMesh_ArrayKernelT.hh +++ b/src/OpenMesh/Core/Mesh/PolyMesh_ArrayKernelT.hh @@ -74,7 +74,8 @@ namespace OpenMesh { - +template +class TriMesh_ArrayKernelT; //== CLASS DEFINITION ========================================================= /// Helper class to build a PolyMesh-type @@ -97,7 +98,18 @@ struct PolyMesh_ArrayKernel_GeneratorT template class PolyMesh_ArrayKernelT : public PolyMesh_ArrayKernel_GeneratorT::Mesh -{}; +{ +public: + PolyMesh_ArrayKernelT() {} + template + PolyMesh_ArrayKernelT( const TriMesh_ArrayKernelT & t) + { + //assign the connectivity (add vertices) + this->assign(t); + //copy properties from triMesh + this->copy_all_kernel_properties(t); + } +}; //============================================================================= diff --git a/src/OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh b/src/OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh index c179051a..f29cbe0c 100644 --- a/src/OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh +++ b/src/OpenMesh/Core/Mesh/TriMesh_ArrayKernelT.hh @@ -74,7 +74,8 @@ namespace OpenMesh { - +template +class PolyMesh_ArrayKernelT; //== CLASS DEFINITION ========================================================= @@ -97,7 +98,18 @@ struct TriMesh_ArrayKernel_GeneratorT template class TriMesh_ArrayKernelT : public TriMesh_ArrayKernel_GeneratorT::Mesh -{}; +{ +public: + TriMesh_ArrayKernelT() {} + template + TriMesh_ArrayKernelT( const PolyMesh_ArrayKernelT & t) + { + //assign the connectivity (add vertices) + this->assign(t); + //copy properties from polyMesh + this->copy_all_kernel_properties(t); + } +}; //=============================================================================