0021897: EDF 1495 SMESH : Problem with groups when building a compound with medballs

Make control variable of for different in outer (on meshes) and
   inner (on groups) loops.
This commit is contained in:
eap 2012-10-09 14:02:38 +00:00
parent c5c930fa65
commit afd264a070

View File

@ -2213,6 +2213,7 @@ SMESH_Gen_i::ConcatenateCommon(const SMESH::mesh_array& theMeshesArray,
SMESH_Mesh_i* anInitImpl = dynamic_cast<SMESH_Mesh_i*>( GetServant( anInitMesh ).in() ); SMESH_Mesh_i* anInitImpl = dynamic_cast<SMESH_Mesh_i*>( GetServant( anInitMesh ).in() );
if ( anInitImpl ) { if ( anInitImpl ) {
::SMESH_Mesh& aInitLocMesh = anInitImpl->GetImpl(); ::SMESH_Mesh& aInitLocMesh = anInitImpl->GetImpl();
aInitLocMesh.Load();
SMESHDS_Mesh* anInitMeshDS = aInitLocMesh.GetMeshDS(); SMESHDS_Mesh* anInitMeshDS = aInitLocMesh.GetMeshDS();
TIDsMap nodesMap; TIDsMap nodesMap;
@ -2309,7 +2310,7 @@ SMESH_Gen_i::ConcatenateCommon(const SMESH::mesh_array& theMeshesArray,
} }
} }
} }
}//elems loop } //elems loop
// copy orphan nodes // copy orphan nodes
SMDS_NodeIteratorPtr itNodes = anInitMeshDS->nodesIterator(); SMDS_NodeIteratorPtr itNodes = anInitMeshDS->nodesIterator();
@ -2411,8 +2412,8 @@ SMESH_Gen_i::ConcatenateCommon(const SMESH::mesh_array& theMeshesArray,
} }
// check that current group name and type don't have identical ones in union mesh // check that current group name and type don't have identical ones in union mesh
for (int i = 0; i < aListOfGroups->length(); i++) { for (int iG = 0; iG < aListOfGroups->length(); iG++) {
aGroup = aListOfGroups[i]; aGroup = aListOfGroups[iG];
aListOfNewGroups.clear(); aListOfNewGroups.clear();
aGroupType = aGroup->GetType(); aGroupType = aGroup->GetType();
aGroupName = aGroup->GetName(); aGroupName = aGroup->GetName();