X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=inline;f=src%2FDriverMED%2FDriverMED_Family.cxx;h=2c6a61719976edcf136e0b49a9f8295690753b4c;hb=5433fd6781b2e7a3cccb3b08a5960836dbaac959;hp=34ff2c20ba0c0c9bbb22c36aa0ba2a98b3e9c43b;hpb=776e25bc46048a970a8492f432a4e8ce01dada79;p=modules%2Fsmesh.git diff --git a/src/DriverMED/DriverMED_Family.cxx b/src/DriverMED/DriverMED_Family.cxx index 34ff2c20b..2c6a61719 100644 --- a/src/DriverMED/DriverMED_Family.cxx +++ b/src/DriverMED/DriverMED_Family.cxx @@ -193,10 +193,10 @@ list DriverMED_Family::MakeFamilies aFamilies.push_back(aFreeVolumesFam); } - //DriverMED_FamilyPtr aNullFam (new DriverMED_Family); - //aNullFam->SetId(0); - //aNullFam->myType = SMDSAbs_All; - //aFamilies.push_back(aNullFam); +// DriverMED_FamilyPtr aNullFam (new DriverMED_Family); +// aNullFam->SetId(0); +// aNullFam->myType = SMDSAbs_All; +// aFamilies.push_back(aNullFam); return aFamilies; } @@ -211,9 +211,18 @@ DriverMED_Family::GetFamilyInfo(const MED::PWrapper& theWrapper, const MED::PMeshInfo& theMeshInfo) const { string aValue; + ostringstream aStr; - aStr << myId; + + aStr << "FAM_" << myId; + set::iterator aGrIter = myGroupNames.begin(); + for (; aGrIter != myGroupNames.end(); aGrIter++) + { + aStr << "_" << *aGrIter; + } + aValue = aStr.str(); + MED::TStringVector anAttrDescs (1, ""); // 1 attribute with empty description, MED::TIntVector anAttrIds (1, myId); // Id=0, MED::TIntVector anAttrVals (1, myId); // Value=0 @@ -350,14 +359,16 @@ void DriverMED_Family::Split (DriverMED_FamilyPtr by, { // Elements set::iterator anIter = by->myElements.begin(); - for (; anIter != by->myElements.end(); anIter++) + while ( anIter != by->myElements.end()) { if (myElements.find(*anIter) != myElements.end()) { common->myElements.insert(*anIter); myElements.erase(*anIter); - by->myElements.erase(*anIter); + by->myElements.erase(anIter++); } + else + anIter++; } if (!common->IsEmpty())