Modif forced by changes in SMESH_MeshEditor::FindFaceInSet()

This commit is contained in:
eap 2006-05-04 13:40:00 +00:00
parent c5c2208a8c
commit 830094fe0a

View File

@ -3243,8 +3243,13 @@ void SMESH_Pattern::
myPolyElems.reserve( myIdsOnBoundary.size() );
// make a set of refined elements
set< const SMDS_MeshElement* > avoidSet, elemSet;
avoidSet.insert( myElements.begin(), myElements.end() );
map<int,const SMDS_MeshElement* > avoidSet, elemSet;
std::vector<const SMDS_MeshElement*>::iterator itv = myElements.begin();
for(; itv!=myElements.end(); itv++) {
const SMDS_MeshElement* el = (*itv);
avoidSet.insert( make_pair(el->GetID(),el) );
}
//avoidSet.insert( myElements.begin(), myElements.end() );
map< TNodeSet, list< list< int > > >::iterator indListIt, nn_IdList;
@ -3274,7 +3279,7 @@ void SMESH_Pattern::
SMESH_MeshEditor::FindFaceInSet( n1, n2, elemSet, avoidSet );
if ( face )
{
avoidSet.insert ( face );
avoidSet.insert ( make_pair(face->GetID(),face) );
myPolyElems.push_back( face );
// some links of <face> are split;
@ -3395,7 +3400,7 @@ void SMESH_Pattern::
while ( eIt->more() )
{
const SMDS_MeshElement* elem = eIt->next();
if ( !volTool.Set( elem ) || !avoidSet.insert( elem ).second )
if ( !volTool.Set( elem ) || !avoidSet.insert( make_pair(elem->GetID(),elem) ).second )
continue; // skip faces or refined elements
// add polyhedron definition
myPolyhedronQuantities.push_back(vector<int> ());