X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_MeshEditor.hxx;h=014437c6d2ba905609946e06d409b57626aaaea5;hb=066bd16ca71e8fb8c62987c5e2307bb5b67ee34a;hp=8380cc900323d7674d40cb3631fbf32ecb7862a8;hpb=f500e5a8b62895e81275f73d8fecd7a977711d78;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_MeshEditor.hxx b/src/SMESH/SMESH_MeshEditor.hxx index 8380cc900..014437c6d 100644 --- a/src/SMESH/SMESH_MeshEditor.hxx +++ b/src/SMESH/SMESH_MeshEditor.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -126,6 +126,12 @@ public: // Reverse theFaces whose orientation to be same as that of theFace // oriented according to theDirection. Return nb of reoriented faces + int Reorient2DBy3D (TIDSortedElemSet & theFaces, + TIDSortedElemSet & theVolumes, + const bool theOutsideNormal); + // Reorient faces basing on orientation of adjacent volumes. + // Return nb of reoriented faces + /*! * \brief Fuse neighbour triangles into quadrangles. * \param theElems - The triangles to be fused. @@ -553,7 +559,8 @@ public: double OrientedAngle(const gp_Pnt& p0, const gp_Pnt& p1, const gp_Pnt& g1, const gp_Pnt& g2); bool DoubleNodesOnGroupBoundaries( const std::vector& theElems, - bool createJointElems); + bool createJointElems, + bool onAllBoundaries); bool CreateFlatElementsOnFacesGroups( const std::vector& theElems ); @@ -604,11 +611,14 @@ public: * \param nodeGens - nodes making corresponding myLastCreatedNodes * \param elemGens - elements making corresponding myLastCreatedElems * \param postfix - to append to names of new groups + * \param targetMesh - mesh to create groups in + * \param topPresent - is there "top" elements that are created by sweeping */ PGroupIDs generateGroups(const SMESH_SequenceOfElemPtr& nodeGens, const SMESH_SequenceOfElemPtr& elemGens, const std::string& postfix, - SMESH_Mesh* targetMesh=0); + SMESH_Mesh* targetMesh=0, + const bool topPresent=true); /*! * \brief Create elements by sweeping an element * \param elem - element to sweep @@ -676,6 +686,9 @@ public: std::map< const SMDS_MeshNode*, const SMDS_MeshNode* >& theNodeNodeMap, const bool theIsDoubleElem ); + void copyPosition( const SMDS_MeshNode* from, + const SMDS_MeshNode* to ); + private: SMESH_Mesh * myMesh;