From 9b0f6840489a3f3993a4c8384786fb86c98464a7 Mon Sep 17 00:00:00 2001 From: eap Date: Mon, 28 Jan 2013 08:13:42 +0000 Subject: [PATCH] 0021893: EDF 2133 SMESH : Improvement of 3D extrusion algorithm Use aGlobIgnoAlgo->NeedLowerHyps( dim ) in checkConformIgnoredAlgos() --- src/SMESH/SMESH_Gen.cxx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/SMESH/SMESH_Gen.cxx b/src/SMESH/SMESH_Gen.cxx index 4651d9793..098c754bc 100644 --- a/src/SMESH/SMESH_Gen.cxx +++ b/src/SMESH/SMESH_Gen.cxx @@ -591,12 +591,13 @@ static bool checkConformIgnoredAlgos(SMESH_Mesh& aMesh, } else { - bool isGlobal = (aMesh.IsMainShape( aSubMesh->GetSubShape() )); - int dim = algo->GetDim(); + bool isGlobal = (aMesh.IsMainShape( aSubMesh->GetSubShape() )); + int dim = algo->GetDim(); int aMaxGlobIgnoDim = ( aGlobIgnoAlgo ? aGlobIgnoAlgo->GetDim() : -1 ); + bool isNeededDim = ( aGlobIgnoAlgo ? aGlobIgnoAlgo->NeedLowerHyps( dim ) : false ); - if ( dim < aMaxGlobIgnoDim && - ( isGlobal || !aGlobIgnoAlgo->SupportSubmeshes() )) + if (( dim < aMaxGlobIgnoDim && !isNeededDim ) && + ( isGlobal || !aGlobIgnoAlgo->SupportSubmeshes() )) { // algo is hidden by a global algo theErrors.push_back( SMESH_Gen::TAlgoStateError() ); -- 2.30.2