X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_Gen.cxx;h=f70bb64fc0deafaf77ed8c3226edb87822b8f687;hb=c84ff91c3981488e5a5ae5c6661899f48872290d;hp=99da9f8e4ce877f559ab8dea667f1fb71b46a85a;hpb=68b41560cb8513198ea531572cce5174a4ca4982;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_Gen.cxx b/src/SMESH/SMESH_Gen.cxx index 99da9f8e4..f70bb64fc 100644 --- a/src/SMESH/SMESH_Gen.cxx +++ b/src/SMESH/SMESH_Gen.cxx @@ -47,6 +47,10 @@ #include "memoire.h" +#ifdef WNT + #include +#endif + using namespace std; //============================================================================= @@ -375,7 +379,9 @@ bool SMESH_Gen::Compute(SMESH_Mesh & aMesh, { SMESH_MesherHelper aHelper( aMesh ); if ( aHelper.IsQuadraticMesh() != SMESH_MesherHelper::LINEAR ) - aHelper.FixQuadraticElements(); + { + aHelper.FixQuadraticElements( sm->GetComputeError() ); + } } return ret; } @@ -583,6 +589,8 @@ static bool checkConformIgnoredAlgos(SMESH_Mesh& aMesh, if ( aLocIgnoAlgo ) // algo is hidden by a local algo of upper dim { + theErrors.push_back( SMESH_Gen::TAlgoStateError() ); + theErrors.back().Set( SMESH_Hypothesis::HYP_HIDDEN_ALGO, algo, false ); INFOS( "Local <" << algo->GetName() << "> is hidden by local <" << aLocIgnoAlgo->GetName() << ">"); } @@ -595,6 +603,8 @@ static bool checkConformIgnoredAlgos(SMESH_Mesh& aMesh, if ( dim < aMaxGlobIgnoDim ) { // algo is hidden by a global algo + theErrors.push_back( SMESH_Gen::TAlgoStateError() ); + theErrors.back().Set( SMESH_Hypothesis::HYP_HIDDEN_ALGO, algo, true ); INFOS( ( isGlobal ? "Global" : "Local" ) << " <" << algo->GetName() << "> is hidden by global <" << aGlobIgnoAlgo->GetName() << ">"); @@ -1123,7 +1133,7 @@ SMESH_Algo *SMESH_Gen::GetAlgo(SMESH_Mesh & aMesh, if ( SMESH_Algo* algo3D = (SMESH_Algo*) aMesh.GetHypothesis( *solid, filter, true )) { algos3D.push_back( algo3D ); - filter.AndNot( filter.Is( algo3D )); + filter.AndNot( filter.HasName( algo3D->GetName() )); } // check compatibility of algos if ( algos3D.size() > 1 )