X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_ViscousLayers.hxx;h=4fa07a9efe0f8a8a572717b5c739efa2d1fcffca;hb=9645435524d6601ce3d0da6d226d9c11991d864e;hp=9c701a4cecee4a36be9b5dba4cae8afc8b6130ab;hpb=2c607013a23bd4e7ba07e72e0c04dee2c1209cff;p=modules%2Fsmesh.git diff --git a/src/StdMeshers/StdMeshers_ViscousLayers.hxx b/src/StdMeshers/StdMeshers_ViscousLayers.hxx index 9c701a4ce..4fa07a9ef 100644 --- a/src/StdMeshers/StdMeshers_ViscousLayers.hxx +++ b/src/StdMeshers/StdMeshers_ViscousLayers.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -39,9 +39,10 @@ class STDMESHERS_EXPORT StdMeshers_ViscousLayers : public SMESH_Hypothesis public: StdMeshers_ViscousLayers(int hypId, int studyId, SMESH_Gen* gen); - // Set faces to exclude from treatment - void SetIgnoreFaces(const std::vector& faceIds); - std::vector GetIgnoreFaces() const { return _ignoreFaceIds; } + // Set boundary shapes to exclude from treatment, faces in 3D, edges in 2D + void SetBndShapesToIgnore(const std::vector& shapeIds); + std::vector GetBndShapesToIgnore() const { return _ignoreBndShapeIds; } + bool IsIgnoredShape(const int shapeID) const; // Set total thickness of layers of prisms void SetTotalThickness(double thickness); @@ -85,10 +86,20 @@ public: private: - std::vector _ignoreFaceIds; + std::vector _ignoreBndShapeIds; int _nbLayers; double _thickness; double _stretchFactor; }; +class SMESH_subMesh; +namespace VISCOUS_3D +{ + // sets a sub-mesh event listener to clear sub-meshes of sub-shapes of + // the main shape when sub-mesh of the main shape is cleared, + // for example to clear sub-meshes of FACEs when sub-mesh of a SOLID + // is cleared + void ToClearSubWithMain( SMESH_subMesh* sub, const TopoDS_Shape& main); +} + #endif