- SMDS_NodeIteratorPtr itNode;
- SMDS_ElemIteratorPtr itElem;
- for ( itSubM = aSubMeshes.begin(); itSubM != aSubMeshes.end() ; itSubM++ )
- {
- TSubMID aSubMeID = itSubM->first;
- SMESHDS_SubMesh* aSubMesh = itSubM->second;
- if ( aSubMesh->IsComplexSubmesh() )
- continue; // submesh containing other submeshs
- // nodes
- hint = nId2smId.begin(); // optimize insertion basing on increasing order of elem Ids in submesh
- for ( itNode = aSubMesh->GetNodes(); itNode->more(); ++hint)
- hint = nId2smId.insert( hint, make_pair( itNode->next()->GetID(), aSubMeID ));
- // elements
- hint = eId2smId.begin();
- for ( itElem = aSubMesh->GetElements(); itElem->more(); ++hint)
- hint = eId2smId.insert( hint, make_pair( itElem->next()->GetID(), aSubMeID ));
- }
-
- // Care of elements that are not on submeshes
- if ( mySMESHDSMesh->NbNodes() != nId2smId.size() ) {
- for ( itNode = mySMESHDSMesh->nodesIterator(); itNode->more(); )
- /* --- stl_map.h says : */
- /* A %map relies on unique keys and thus a %pair is only inserted if its */
- /* first element (the key) is not already present in the %map. */
- nId2smId.insert( make_pair( itNode->next()->GetID(), 0 ));
- }
- int nbElems = mySMESHDSMesh->NbEdges() + mySMESHDSMesh->NbFaces() + mySMESHDSMesh->NbVolumes();
- if ( nbElems != eId2smId.size() ) {
- for ( itElem = mySMESHDSMesh->elementsIterator(); itElem->more(); )
- eId2smId.insert( make_pair( itElem->next()->GetID(), 0 ));
- }
+ // SMDS_NodeIteratorPtr itNode;
+ // SMDS_ElemIteratorPtr itElem;
+ // for ( itSubM = aSubMeshes.begin(); itSubM != aSubMeshes.end() ; itSubM++ )
+ // {
+ // TSubMID aSubMeID = itSubM->first;
+ // SMESHDS_SubMesh* aSubMesh = itSubM->second;
+ // if ( aSubMesh->IsComplexSubmesh() )
+ // continue; // sub-mesh containing other sub-meshes
+ // // nodes
+ // for ( itNode = aSubMesh->GetNodes(); itNode->more(); ++hint)
+ // nId2smId.insert( nId2smId.back(), make_pair( itNode->next()->GetID(), aSubMeID ));
+ // // elements
+ // for ( itElem = aSubMesh->GetElements(); itElem->more(); ++hint)
+ // hint = eId2smId.insert( eId2smId.back(), make_pair( itElem->next()->GetID(), aSubMeID ));
+ // }
+
+ // // Care of elements that are not on submeshes
+ // if ( mySMESHDSMesh->NbNodes() != nId2smId.size() ) {
+ // for ( itNode = mySMESHDSMesh->nodesIterator(); itNode->more(); )
+ // /* --- stl_map.h says : */
+ // /* A %map relies on unique keys and thus a %pair is only inserted if its */
+ // /* first element (the key) is not already present in the %map. */
+ // nId2smId.insert( make_pair( itNode->next()->GetID(), 0 ));
+ // }
+ // int nbElems = mySMESHDSMesh->GetMeshInfo().NbElements();
+ // if ( nbElems != eId2smId.size() ) {
+ // for ( itElem = mySMESHDSMesh->elementsIterator(); itElem->more(); )
+ // eId2smId.insert( make_pair( itElem->next()->GetID(), 0 ));
+ // }