aSubProfile->myNbCells = aProfileInfo->myElemNum.size();
aSubProfile->myName = aProfileInfo->GetName();
- aSubProfile->myProfileInfo = aProfileInfo;
-
aSubProfile->myStatus = eAddPart;
}
}
if(aGaussInfo){
aName = aGaussInfo->GetName();
if(!aSubMeshID.empty()){
- MED::PProfileInfo aProfileInfo = aSubProfile->myProfileInfo;
- const MED::TElemNum& anElemNum = aProfileInfo->myElemNum;
- anIsGaussCoord3D = MED::GetGaussCoord3D(aGaussInfo,
- aCellInfo,
- aNodeInfo,
- aGaussCoord,
- anElemNum);
+ const std::string& aProfileName = aSubProfile->myName;
+ MED::PProfileInfo aProfileInfo = MED::GetProfileInfo(*theMed,
+ aProfileName);
+ if(aProfileInfo){
+ const MED::TElemNum& anElemNum = aProfileInfo->myElemNum;
+ anIsGaussCoord3D = MED::GetGaussCoord3D(aGaussInfo,
+ aCellInfo,
+ aNodeInfo,
+ aGaussCoord,
+ anElemNum);
+ }
}else
anIsGaussCoord3D = MED::GetGaussCoord3D(aGaussInfo,
aCellInfo,
}
}else{
if(!aSubMeshID.empty()){
- MED::PProfileInfo aProfileInfo = aSubProfile->myProfileInfo;
- const MED::TElemNum& anElemNum = aProfileInfo->myElemNum;
- anIsGaussCoord3D = MED::GetBaryCenter(aCellInfo,
- aNodeInfo,
- aGaussCoord,
- anElemNum);
+ const std::string& aProfileName = aSubProfile->myName;
+ MED::PProfileInfo aProfileInfo = MED::GetProfileInfo(*theMed,
+ aProfileName);
+ if(aProfileInfo){
+ const MED::TElemNum& anElemNum = aProfileInfo->myElemNum;
+ anIsGaussCoord3D = MED::GetBaryCenter(aCellInfo,
+ aNodeInfo,
+ aGaussCoord,
+ anElemNum);
+ }
}else
anIsGaussCoord3D = MED::GetBaryCenter(aCellInfo,
aNodeInfo,
//---------------------------------------------------------------
struct TMEDSubProfile: virtual TSubProfileImpl
{
- MED::PProfileInfo myProfileInfo;
MED::EGeometrieElement myMGeom;
};
typedef SharedPtr<TMEDSubProfile> PMEDSubProfile;