-
-/*! Create a volume (prism or hexahedron) by duplication of a face.
- * the nodes of the new face are already created.
- * @param vtkVolId vtk id of a volume containing the face, to get an orientation for the face.
- * @param localClonedNodeIds map old node id to new node id. The old nodes define the face in the volume.
- * @return ok if success.
- */
-bool SMESHDS_Mesh::extrudeVolumeFromFace(int vtkVolId, std::map<int,int>& localClonedNodeIds)
-{
- //MESSAGE("extrudeVolumeFromFace " << vtkVolId);
- vector<int> orderedNodes;
- orderedNodes.clear();
- map<int, int>::const_iterator it = localClonedNodeIds.begin();
- for (; it != localClonedNodeIds.end(); ++it)
- orderedNodes.push_back(it->first);
-
- int nbNodes = myGrid->getOrderedNodesOfFace(vtkVolId, orderedNodes);
- for (int i=0; i<nbNodes; i++)
- orderedNodes.push_back(localClonedNodeIds[orderedNodes[i]]);
- SMDS_MeshVolume *vol = this->AddVolumeFromVtkIds(orderedNodes);
-
- // TODO update subshape list of elements and nodes
- return vol;
-}