Skip to content
Snippets Groups Projects
Commit b3afd0f3 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

enable mesh extrusion of surface with seam

parent 7b81ad62
No related branches found
No related tags found
No related merge requests found
...@@ -143,6 +143,23 @@ static void extrudeMesh(GFace *from, GRegion *to, MVertexRTree &pos) ...@@ -143,6 +143,23 @@ static void extrudeMesh(GFace *from, GRegion *to, MVertexRTree &pos)
std::vector<MVertex*> embedded = from->getEmbeddedMeshVertices(); std::vector<MVertex*> embedded = from->getEmbeddedMeshVertices();
mesh_vertices.insert(mesh_vertices.end(), embedded.begin(), embedded.end()); mesh_vertices.insert(mesh_vertices.end(), embedded.begin(), embedded.end());
// add all vertices on surface seams
std::set<MVertex*> seam;
std::list<GEdge*> l_edges = from->edges();
for (std::list<GEdge*>::const_iterator it = l_edges.begin();
it != l_edges.end(); ++it){
if ((*it)->isSeam(from)){
seam.insert((*it)->mesh_vertices.begin(), (*it)->mesh_vertices.end());
if((*it)->getBeginVertex())
seam.insert((*it)->getBeginVertex()->mesh_vertices.begin(),
(*it)->getBeginVertex()->mesh_vertices.end());
if((*it)->getEndVertex())
seam.insert((*it)->getEndVertex()->mesh_vertices.begin(),
(*it)->getEndVertex()->mesh_vertices.end());
}
}
mesh_vertices.insert(mesh_vertices.end(), seam.begin(), seam.end());
// create extruded vertices // create extruded vertices
for(unsigned int i = 0; i < mesh_vertices.size(); i++){ for(unsigned int i = 0; i < mesh_vertices.size(); i++){
MVertex *v = mesh_vertices[i]; MVertex *v = mesh_vertices[i];
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment