- // Make maps of submesh IDs of elements sorted by element IDs
- // typedef int TElemID;
- // typedef int TSubMID;
- // map< TElemID, TSubMID > eId2smId, nId2smId;
- const map<int,SMESHDS_SubMesh*>& aSubMeshes = mySMESHDSMesh->SubMeshes();
- map<int,SMESHDS_SubMesh*>::const_iterator itSubM ( aSubMeshes.begin() );
- // 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 ));
- // }
-