0021153: [CEA] non regression test fails

fix error that pyramids sharing one common node are not checked for intersection
This commit is contained in:
eap 2011-02-01 13:48:56 +00:00
parent 71803bed9f
commit d9c073c952

View File

@ -91,7 +91,7 @@ namespace
int ind = baseNodes[0] ? 1:0;
if ( baseNodes[ ind ])
return false; // pyramids with a common base face
baseNodes [ ind ] = PrmI->GetNode(i);
baseNodes [ ind ] = PrmI->GetNode(i);
baseNodesIndI[ ind ] = i;
baseNodesIndJ[ ind ] = j;
}
@ -1057,7 +1057,11 @@ bool StdMeshers_QuadToTriaAdaptor::Compute2ndPart(SMESH_Mesh&
PsI[k] = SMESH_TNodeXYZ( n );
SMDS_ElemIteratorPtr vIt = n->GetInverseElementIterator( SMDSAbs_Volume );
while ( vIt->more() )
checkedPyrams.insert( vIt->next() );
{
const SMDS_MeshElement* PrmJ = vIt->next();
if ( SMESH_Algo::GetCommonNodes( PrmI, PrmJ ).size() > 1 )
checkedPyrams.insert( PrmJ );
}
}
// check intersection with distant pyramids