SMESH::Controls::NumericalFunctorPtr theCriterion);
- enum SplitVolumToTetraFlags { HEXA_TO_5 = 1, HEXA_TO_6 = 2 };//!<arg of SplitVolumesIntoTetra()
+ enum SplitVolumToTetraFlags { HEXA_TO_5 = 1, HEXA_TO_6 = 2, HEXA_TO_24 = 3 };//!<arg of SplitVolumesIntoTetra()
/*!
* \brief Split volumic elements into tetrahedra.
*/
// Move or copy theElements applying theTrsf to their nodes
- /*!
- * Generate new elements by extrusion of theElements
- * param theElems - list of elements for scale
- * param thePoint - base point for scale
- * param theScaleFact - scale factors for axises
- * param theCopy - allows copying the translated elements
- * param theMakeGroups - forces the generation of new groups from existing ones
- * param theTargetMesh - the name of the newly created mesh
- * return instance of Mesh class
- */
- PGroupIDs Scale (TIDSortedElemSet& theElements,
- const gp_Pnt& thePoint,
- const std::list<double>& theScaleFact,
- const bool theCopy,
- const bool theMakeGroups,
- SMESH_Mesh* theTargetMesh=0);
-
typedef std::list< std::list< const SMDS_MeshNode* > > TListOfListOfNodes;
void FindCoincidentNodes (TIDSortedNodeSet & theNodes,
const TIDSortedElemSet& theNodesNot,
const TopoDS_Shape& theShape );
- /*!
- * \brief Generated skin mesh (containing 2D cells) from 3D mesh
- * The created 2D mesh elements based on nodes of free faces of boundary volumes
- * \return TRUE if operation has been completed successfully, FALSE otherwise
- */
bool Make2DMeshFrom3D();
-
+
+ enum Bnd_Dimension { BND_2DFROM3D, BND_1DFROM3D, BND_1DFROM2D };
+
+ void MakeBoundaryMesh(const TIDSortedElemSet& elements,
+ Bnd_Dimension dimension,
+ SMESH_Group* group = 0,
+ SMESH_Mesh* targetMesh = 0,
+ bool toCopyElements = false,
+ bool toCopyExistingBondary = false);
+
private:
/*!