X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_ViscousLayers.cxx;fp=src%2FStdMeshers%2FStdMeshers_ViscousLayers.cxx;h=fa4853668d343c773397d41e15204a78b3aa44b7;hb=52762f26394e31b227967517395453d61311d80a;hp=47412786ea2ca81fefee7635cdd8ca1bc6ce90a4;hpb=3d563f79648e74ba577341cee8b1a874fbd13c49;p=modules%2Fsmesh.git diff --git a/src/StdMeshers/StdMeshers_ViscousLayers.cxx b/src/StdMeshers/StdMeshers_ViscousLayers.cxx index 47412786e..fa4853668 100644 --- a/src/StdMeshers/StdMeshers_ViscousLayers.cxx +++ b/src/StdMeshers/StdMeshers_ViscousLayers.cxx @@ -4934,7 +4934,7 @@ bool _ViscousBuilder::inflate(_SolidData& data) if ( eos._edges[i]->_nodes.size() > 1 ) avgThick += Min( 1., eos._edges[i]->_len / shapeTgtThick ); else - avgThick += shapeTgtThick; + avgThick += 1; nbActiveEdges += ( ! eos._edges[i]->Is( _LayerEdge::BLOCKED )); } } @@ -5448,8 +5448,11 @@ bool _ViscousBuilder::smoothAndCheck(_SolidData& data, // intersection not ignored - if ( toBlockInfaltion && - dist < ( eos._edges[i]->_len * theThickToIntersection )) + double minDist = 0; + if ( eos._edges[i]->_maxLen < 0.99 * eos._hyp.GetTotalThickness() ) // limited length + minDist = eos._edges[i]->_len * theThickToIntersection; + + if ( toBlockInfaltion && dist < minDist ) { if ( is1stBlocked ) { is1stBlocked = false; // debug dumpFunction(SMESH_Comment("blockIntersected") <