44#include "MergePlugin.hh"
45#include <OpenMesh/Core/Utils/Property.hh>
50template<
class MeshT >
53 typename MeshT::VertexHandle vhB;
59template<
class MeshT >
63 for (uint i=0; i < _meshes.size(); i++)
64 if ( _meshes[i] == 0) {
65 emit log(
LOGERR,
"Unable to get Meshes.");
69 typename MeshT::VertexHandle tmp;
71 for (uint i=1; i < _meshes.size(); i++){
77 _meshes[i]->add_property(vertexID,
"Vertex ID Property" );
80 for (
auto v_it : _meshes[i]->vertices()){
82 typename MeshT::VertexHandle vh = _meshes[0]->add_vertex( _meshes[i]->point(v_it) );
83 _meshes[i]->property(vertexID, v_it) = vh;
94 for (
auto f_it : _meshes[i]->faces()){
96 std::vector< typename MeshT::VertexHandle > vHandles;
98 for (
auto fv_it : f_it.vertices())
99 vHandles.push_back( _meshes[i]->property(vertexID, fv_it) );
102 _meshes[0]->add_face(vHandles);
105 _meshes[i]->remove_property( vertexID );
void mergeMeshes(const std::vector< MeshT * > &_meshes)
merges Meshes into the first mesh