diff --git a/src/OpenMesh/Core/Mesh/PolyMeshT.hh b/src/OpenMesh/Core/Mesh/PolyMeshT.hh index d0e4d4f8..d514fedc 100644 --- a/src/OpenMesh/Core/Mesh/PolyMeshT.hh +++ b/src/OpenMesh/Core/Mesh/PolyMeshT.hh @@ -186,6 +186,8 @@ public: // --- constructor/destructor PolyMeshT() {} + template + explicit PolyMeshT(const T& t) : Kernel(t) {} virtual ~PolyMeshT() {} /** Uses default copy and assignment operator. diff --git a/src/OpenMesh/Core/Mesh/TriMeshT.hh b/src/OpenMesh/Core/Mesh/TriMeshT.hh index 7c3359eb..bf51e29a 100644 --- a/src/OpenMesh/Core/Mesh/TriMeshT.hh +++ b/src/OpenMesh/Core/Mesh/TriMeshT.hh @@ -169,6 +169,10 @@ public: /// Default constructor TriMeshT() : PolyMesh() {} + explicit TriMeshT(PolyMesh rhs) : PolyMesh((rhs.triangulate(), rhs)) + { + } + /// Destructor virtual ~TriMeshT() {}