mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-02-03 11:10:32 +05:00
bos #20643 EDF 22805 - Pb Viscous Layer
1) Fix computing average thickness of layers 2) Don't block an edge with not limited _maxLen if it not reached an obstacle yet
This commit is contained in:
parent
3d563f7964
commit
52762f2639
@ -4934,7 +4934,7 @@ bool _ViscousBuilder::inflate(_SolidData& data)
|
|||||||
if ( eos._edges[i]->_nodes.size() > 1 )
|
if ( eos._edges[i]->_nodes.size() > 1 )
|
||||||
avgThick += Min( 1., eos._edges[i]->_len / shapeTgtThick );
|
avgThick += Min( 1., eos._edges[i]->_len / shapeTgtThick );
|
||||||
else
|
else
|
||||||
avgThick += shapeTgtThick;
|
avgThick += 1;
|
||||||
nbActiveEdges += ( ! eos._edges[i]->Is( _LayerEdge::BLOCKED ));
|
nbActiveEdges += ( ! eos._edges[i]->Is( _LayerEdge::BLOCKED ));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -5448,8 +5448,11 @@ bool _ViscousBuilder::smoothAndCheck(_SolidData& data,
|
|||||||
|
|
||||||
// intersection not ignored
|
// intersection not ignored
|
||||||
|
|
||||||
if ( toBlockInfaltion &&
|
double minDist = 0;
|
||||||
dist < ( eos._edges[i]->_len * theThickToIntersection ))
|
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
|
if ( is1stBlocked ) { is1stBlocked = false; // debug
|
||||||
dumpFunction(SMESH_Comment("blockIntersected") <<data._index<<"_InfStep"<<infStep);
|
dumpFunction(SMESH_Comment("blockIntersected") <<data._index<<"_InfStep"<<infStep);
|
||||||
|
Loading…
Reference in New Issue
Block a user