X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_MeshEditor.hxx;h=677d9c033596a54021628fd99c3ebe8e4c13fa25;hb=fedc148b815f83c4bbb19b83254a879e90ed8df0;hp=3dc5173f695103f3191ffe410ebc7bab9e8692b9;hpb=090aff07266d376ae028ae43434bdea7c0a0f9bb;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_MeshEditor.hxx b/src/SMESH/SMESH_MeshEditor.hxx index 3dc5173f6..677d9c033 100644 --- a/src/SMESH/SMESH_MeshEditor.hxx +++ b/src/SMESH/SMESH_MeshEditor.hxx @@ -70,9 +70,8 @@ class SMESH_MeshEditor { // with a quadrangle built on the same 4 nodes. // Return false if proper faces not found - bool Reorient (const SMDS_MeshElement * theFace); - // Reverse the normal of theFace - // Return false if theFace is null + bool Reorient (const SMDS_MeshElement * theElement); + // Reverse theElement orientation bool TriToQuad (std::set & theElems, @@ -122,13 +121,23 @@ class SMESH_MeshEditor { // Generate new elements by extrusion of theElements // by theStep by theNbSteps - int ExtrusionAlongTrack (std::set & theElements, - SMESH_subMesh* theTrackPattern, - const SMDS_MeshNode* theNodeStart, - const bool theHasAngles, - std::list& theAngles, - const bool theHasRefPoint, - const gp_Pnt& theRefPoint); + enum Extrusion_Error { + EXTR_OK, + EXTR_NO_ELEMENTS, + EXTR_PATH_NOT_EDGE, + EXTR_BAD_PATH_SHAPE, + EXTR_BAD_STARTING_NODE, + EXTR_BAD_ANGLES_NUMBER, + EXTR_CANT_GET_TANGENT + }; + + Extrusion_Error ExtrusionAlongTrack (std::set & theElements, + SMESH_subMesh* theTrackPattern, + const SMDS_MeshNode* theNodeStart, + const bool theHasAngles, + std::list& theAngles, + const bool theHasRefPoint, + const gp_Pnt& theRefPoint); // Generate new elements by extrusion of theElements along path given by theTrackPattern, // theHasAngles are the rotation angles, base point can be given by theRefPoint