From 66911d7aa9e23e7424847ded4f17d9814e15aac9 Mon Sep 17 00:00:00 2001 From: vsr Date: Mon, 13 Feb 2017 16:56:14 +0300 Subject: [PATCH] 0021803: EDF 2351 : Available versions of MED in TUI function ExportMED aren't consistent with GUI behavior Step 2: Remove deprecated MED_VERSION enumerator. --- idl/SMESH_Gen.idl | 12 +- idl/SMESH_Mesh.idl | 29 +--- src/DriverMED/DriverMED_W_SMESHDS_Mesh.cxx | 15 -- src/DriverMED/DriverMED_W_SMESHDS_Mesh.h | 2 - src/MEDWrapper/MED_Factory.cxx | 139 ++++++++---------- src/MEDWrapper/MED_Factory.hxx | 8 + src/MEDWrapper/MED_V2_2_Wrapper.hxx | 30 ---- src/MEDWrapper/MED_Wrapper.hxx | 4 + src/MEDWrapper/mprint_version.cxx | 26 ++-- src/SMESH/SMESH_Mesh.cxx | 4 +- src/SMESH/SMESH_Mesh.hxx | 1 - src/SMESHGUI/SMESHGUI.cxx | 56 ++----- src/SMESHGUI/SMESH_msg_en.ts | 15 +- src/SMESHGUI/SMESH_msg_fr.ts | 15 +- src/SMESHGUI/SMESH_msg_ja.ts | 12 +- src/SMESH_I/CMakeLists.txt | 2 +- src/SMESH_I/SMESH_2smeshpy.cxx | 38 ++++- src/SMESH_I/SMESH_Gen_i.cxx | 43 ++++-- src/SMESH_I/SMESH_Gen_i.hxx | 9 +- src/SMESH_I/SMESH_Mesh_i.cxx | 35 ++--- src/SMESH_I/SMESH_Mesh_i.hxx | 9 +- ...SH_DumpPython.cxx => SMESH_PythonDump.cxx} | 12 -- src/SMESH_I/SMESH_PythonDump.hxx | 3 - src/SMESH_SWIG/smeshBuilder.py | 53 +++++-- src/Tools/ZCracksPlug/casTests/genereCube.py | 4 +- src/Tools/ZCracksPlug/ellipse.py | 2 +- src/Tools/ZCracksPlug/genereCrack.py | 2 +- src/Tools/ZCracksPlug/rectangle.py | 2 +- src/Tools/ZCracksPlug/sphere.py | 2 +- src/Tools/ZCracksPlug/utilityFunctions.py | 6 +- src/Tools/blocFissure/exemple2.py | 2 +- .../gmu/construitFissureGenerale.py | 2 +- .../gmu/creeZoneDefautDansObjetSain.py | 2 +- .../gmu/insereFissureElliptique.py | 2 +- .../blocFissure/gmu/insereFissureGenerale.py | 2 +- .../blocFissure/gmu/insereFissureLongue.py | 2 +- .../blocFissure/materielCasTests/cubeAngle.py | 2 +- .../blocFissure/materielCasTests/cubeFin.py | 2 +- .../materielCasTests/decoupeCylindre.py | 2 +- .../materielCasTests/disque_perce.py | 2 +- .../materielCasTests/eprouvetteCourbe.py | 2 +- .../materielCasTests/eprouvetteDroite.py | 2 +- .../materielCasTests/fissureGauche.py | 2 +- .../materielCasTests/fissureGauche2.py | 2 +- src/Tools/blocFissure/materielCasTests/vis.py | 2 +- .../padder/spadderpy/gui/plugindialog.py | 2 +- 46 files changed, 273 insertions(+), 349 deletions(-) rename src/SMESH_I/{SMESH_DumpPython.cxx => SMESH_PythonDump.cxx} (99%) diff --git a/idl/SMESH_Gen.idl b/idl/SMESH_Gen.idl index 75fbe0894..5e03a34ee 100644 --- a/idl/SMESH_Gen.idl +++ b/idl/SMESH_Gen.idl @@ -406,10 +406,20 @@ module SMESH */ long GetObjectId(in Object theObject); + /*! + * \brief Get version of MED format being used. + */ + string GetMEDFileVersion(); + /*! * \brief Get MED version of the file by its name. */ - boolean GetMEDVersion(in string theFileName, out MED_VERSION theVersion); + string GetMEDVersion(in string theFileName); + + /*! + * \brief Check compatibility of file with MED format being used. + */ + boolean CheckCompatibility(in string theFileName); /*! * \brief Get names of meshes defined in file with the specified name. diff --git a/idl/SMESH_Mesh.idl b/idl/SMESH_Mesh.idl index 51c98282c..51ba75dd6 100644 --- a/idl/SMESH_Mesh.idl +++ b/idl/SMESH_Mesh.idl @@ -235,15 +235,6 @@ module SMESH DRS_FAIL // general failure (exception etc.) }; - /*! - * Enumeration for ExportToMED*() - */ - enum MED_VERSION - { - MED_V2_1, - MED_V2_2 - }; - /*! * \brief A structure containing information about MED file */ @@ -634,7 +625,6 @@ module SMESH * - auto_groups : boolean parameter for creating/not creating * the groups Group_On_All_Nodes, Group_On_All_Faces, ... ; * the typical use is auto_groups=false. - * - version : defines the version of format of MED file, that will be created * - overwrite : boolean parameter for overwriting/not overwriting the file, if it exists * - autoDimension : if @c true, a space dimension of a MED mesh can be either * - 1D if all mesh nodes lie on OX coordinate axis, or @@ -644,7 +634,6 @@ module SMESH */ void ExportToMEDX( in string file, in boolean auto_groups, - in MED_VERSION version, in boolean overwrite, in boolean autoDimension) raises (SALOME::SALOME_Exception); @@ -653,7 +642,6 @@ module SMESH * @params * - meshPart : a part of mesh to store * - file : name of the MED file - * - version : define the version of format of MED file, that will be created * - overwrite : boolean parameter for overwriting/not overwriting the file, if it exists * - autoDimension : if @c True, a space dimension for export is defined by mesh * configuration; for example a planar mesh lying on XOY plane @@ -670,25 +658,23 @@ module SMESH void ExportPartToMED( in SMESH_IDSource meshPart, in string file, in boolean auto_groups, - in MED_VERSION version, in boolean overwrite, in boolean autoDimension, in GEOM::ListOfFields fields, in string geomAssocFields ) raises (SALOME::SALOME_Exception); /*! - * Export Mesh to a MED Format file + * Export Mesh to a MED file * Works, just the same as ExportToMEDX, with overwrite parameter equal to true. * The method is kept in order to support old functionality */ - void ExportToMED( in string file, in boolean auto_groups, in MED_VERSION theVersion ) + void ExportToMED( in string file, in boolean auto_groups ) raises (SALOME::SALOME_Exception); /*! - * Export Mesh to MED_V2_1 MED format - * Works, just the same as ExportToMEDX with MED_VERSION parameter equal to MED_V2_1 - * and overwrite parameter equal to true - * The method is kept in order to support old functionality + * Export Mesh to MED file. + * This method is deprecated; it is kept only to support old functionality. + * Works exactly as ExportToMED method. */ void ExportMED( in string file, in boolean auto_groups ) raises (SALOME::SALOME_Exception); @@ -700,11 +686,6 @@ module SMESH void ExportSAUV( in string file, in boolean auto_groups ) raises (SALOME::SALOME_Exception); - /*! - * Return string representation of a MED file version comprising nbDigits - */ - string GetVersionString(in MED_VERSION version, in short nbDigits); - /*! * Export Mesh to different Formats * (UNV supported version is I-DEAS 10) diff --git a/src/DriverMED/DriverMED_W_SMESHDS_Mesh.cxx b/src/DriverMED/DriverMED_W_SMESHDS_Mesh.cxx index 283ed6355..1842ec9b9 100644 --- a/src/DriverMED/DriverMED_W_SMESHDS_Mesh.cxx +++ b/src/DriverMED/DriverMED_W_SMESHDS_Mesh.cxx @@ -68,21 +68,6 @@ void DriverMED_W_SMESHDS_Mesh::SetFile(const std::string& theFileName) Driver_SMESHDS_Mesh::SetFile(theFileName); } -string DriverMED_W_SMESHDS_Mesh::GetVersionString(int theNbDigits) -{ - TInt majeur, mineur, release; - majeur = mineur = release = 0; - MED::GetVersionRelease(majeur, mineur, release); - ostringstream name; - if ( theNbDigits > 0 ) - name << majeur; - if ( theNbDigits > 1 ) - name << "." << mineur; - if ( theNbDigits > 2 ) - name << "." << release; - return name.str(); -} - void DriverMED_W_SMESHDS_Mesh::AddGroup(SMESHDS_GroupBase* theGroup) { myGroups.push_back(theGroup); diff --git a/src/DriverMED/DriverMED_W_SMESHDS_Mesh.h b/src/DriverMED/DriverMED_W_SMESHDS_Mesh.h index 27a44bf4b..e4ae890c1 100644 --- a/src/DriverMED/DriverMED_W_SMESHDS_Mesh.h +++ b/src/DriverMED/DriverMED_W_SMESHDS_Mesh.h @@ -50,8 +50,6 @@ class MESHDRIVERMED_EXPORT DriverMED_W_SMESHDS_Mesh: public Driver_SMESHDS_Mesh void SetFile(const std::string& theFileName); void SetAutoDimension(bool toFindOutDimension) { myAutoDimension = toFindOutDimension; } - static std::string GetVersionString(int theNbDigits=2); - void AddGroupOfNodes(); void AddGroupOfEdges(); void AddGroupOfFaces(); diff --git a/src/MEDWrapper/MED_Factory.cxx b/src/MEDWrapper/MED_Factory.cxx index 34f85e894..a9b8bd2e7 100644 --- a/src/MEDWrapper/MED_Factory.cxx +++ b/src/MEDWrapper/MED_Factory.cxx @@ -36,110 +36,89 @@ extern "C" #endif } -#ifdef _DEBUG_ -static int MYDEBUG = 0; -#else -static int MYDEBUG = 0; -#endif - namespace MED { - enum EStatus { eBad, eDeprecated, eGood }; - - EStatus GetVersionId(const std::string& theFileName) + bool exists(const std::string& fileName) { - INITMSG(MYDEBUG,"GetVersionId - theFileName = '"<= 0) { + med_int major, minor, release; + med_err ret = MEDfileNumVersionRd(aFid, &major, &minor, &release); + if (ret >= 0) { + int version = 100*major + minor; + if (version >= 202) + ok = true; + } + } + MEDfileClose(aFid); + } } - // 3. Try to open the file with MED API - if ( ok ) { - med_idt aFid = MEDfileOpen(theFileName.c_str(), MED_ACC_RDONLY); + return ok; + } - MSG(MYDEBUG,"GetVersionId - theFileName = '"< + namespace MED { + MEDWRAPPER_EXPORT + std::string GetMEDVersion( const std::string& ); + MEDWRAPPER_EXPORT bool GetMEDVersion( const std::string&, int&, int&, int& ); + MEDWRAPPER_EXPORT + bool CheckCompatibility( const std::string& ); + MEDWRAPPER_EXPORT PWrapper CrWrapperR( const std::string& ); diff --git a/src/MEDWrapper/MED_V2_2_Wrapper.hxx b/src/MEDWrapper/MED_V2_2_Wrapper.hxx index 3c56cd6ed..49b2b26f4 100644 --- a/src/MEDWrapper/MED_V2_2_Wrapper.hxx +++ b/src/MEDWrapper/MED_V2_2_Wrapper.hxx @@ -29,36 +29,6 @@ namespace MED { - MEDWRAPPER_EXPORT - TInt - GetDESCLength(); - - MEDWRAPPER_EXPORT - TInt - GetIDENTLength(); - - MEDWRAPPER_EXPORT - TInt - GetNOMLength(); - - MEDWRAPPER_EXPORT - TInt - GetLNOMLength(); - - MEDWRAPPER_EXPORT - TInt - GetPNOMLength(); - - MEDWRAPPER_EXPORT - void - GetVersionRelease(TInt& majeur, TInt& mineur, TInt& release); - - MEDWRAPPER_EXPORT - TInt - GetNbConn(EGeometrieElement typmai, - EEntiteMaillage typent, - TInt mdim); - namespace V2_2 { //---------------------------------------------------------------------------- diff --git a/src/MEDWrapper/MED_Wrapper.hxx b/src/MEDWrapper/MED_Wrapper.hxx index 19b29f8a8..10a9907a7 100644 --- a/src/MEDWrapper/MED_Wrapper.hxx +++ b/src/MEDWrapper/MED_Wrapper.hxx @@ -978,6 +978,10 @@ namespace MED public: SharedPtr() {} + SharedPtr(TWrapper* p): + boost::shared_ptr(p) + {} + template explicit SharedPtr(Y * p): boost::shared_ptr(p) diff --git a/src/MEDWrapper/mprint_version.cxx b/src/MEDWrapper/mprint_version.cxx index 354769c11..7ade43cdc 100644 --- a/src/MEDWrapper/mprint_version.cxx +++ b/src/MEDWrapper/mprint_version.cxx @@ -27,18 +27,22 @@ int main (int argc, char **argv) { - med_idt aFid = MEDfileOpen(argv[1],MED_ACC_RDONLY); - if(aFid < 0) - exit(1); + if ( argc < 2 ) + return -1; - med_int aMajor, aMinor, aRelease; - med_err aRet = MEDfileNumVersionRd(aFid,&aMajor,&aMinor,&aRelease); - MEDfileClose(aFid); - if(aRet < 0) { - // VSR: simulate med 2.3.6 behavior, med file version is assumed to 2.1 - aMajor=2; - aMinor=aRelease=-1; + med_idt fid = MEDfileOpen(argv[1], MED_ACC_RDONLY); + if (fid < 0) + return 1; + + med_int major, minor, release; + med_err aRet = MEDfileNumVersionRd(fid, &major, &minor, &release); + MEDfileClose(fid); + if (aRet < 0) { + // VSR: simulate med 2.3.6 behavior, med file version is assumed to be 2.1 or older + major = 2; + minor = release = -1; } - printf("%d.%d.%d\n",aMajor,aMinor,aRelease); + printf("%d.%d.%d\n", major, minor, release); + return 0; } diff --git a/src/SMESH/SMESH_Mesh.cxx b/src/SMESH/SMESH_Mesh.cxx index e0a067a6d..8344f7de4 100644 --- a/src/SMESH/SMESH_Mesh.cxx +++ b/src/SMESH/SMESH_Mesh.cxx @@ -1379,7 +1379,6 @@ bool SMESH_Mesh::HasDuplicatedGroupNamesMED() * \param [in] theAutoGroups - boolean parameter for creating/not creating * the groups Group_On_All_Nodes, Group_On_All_Faces, ... ; * the typical use is auto_groups=false. - * \param [in] theVersion - defines the version of format of MED file, that will be created * \param [in] meshPart - mesh data to export * \param [in] theAutoDimension - if \c true, a space dimension of a MED mesh can be either * - 1D if all mesh nodes lie on OX coordinate axis, or @@ -1393,7 +1392,6 @@ bool SMESH_Mesh::HasDuplicatedGroupNamesMED() void SMESH_Mesh::ExportMED(const char * file, const char* theMeshName, bool theAutoGroups, - int /*theVersion*/, const SMESHDS_Mesh* meshPart, bool theAutoDimension, bool theAddODOnVertices) @@ -1474,7 +1472,7 @@ void SMESH_Mesh::ExportSAUV(const char *file, cmd += "from medutilities import my_remove ; my_remove(r'" + medfilename + "')"; cmd += "\""; system(cmd.c_str()); - ExportMED(medfilename.c_str(), theMeshName, theAutoGroups, 1); + ExportMED(medfilename.c_str(), theMeshName, theAutoGroups); #ifdef WIN32 cmd = "%PYTHONBIN% "; #else diff --git a/src/SMESH/SMESH_Mesh.hxx b/src/SMESH/SMESH_Mesh.hxx index 6a6953074..5110b444c 100644 --- a/src/SMESH/SMESH_Mesh.hxx +++ b/src/SMESH/SMESH_Mesh.hxx @@ -250,7 +250,6 @@ class SMESH_EXPORT SMESH_Mesh void ExportMED(const char * theFile, const char* theMeshName = NULL, bool theAutoGroups = true, - int theVersion = 0, const SMESHDS_Mesh* theMeshPart = 0, bool theAutoDimension = false, bool theAddODOnVertices = false) diff --git a/src/SMESHGUI/SMESHGUI.cxx b/src/SMESHGUI/SMESHGUI.cxx index 31f16a61f..0b0679335 100644 --- a/src/SMESHGUI/SMESHGUI.cxx +++ b/src/SMESHGUI/SMESHGUI.cxx @@ -234,8 +234,8 @@ namespace } #endif else if ( theCommandID == SMESHOp::OpImportSAUV ) { - filter.append( QObject::tr( "SAUV files (*.sauv*)" ) ); - filter.append( QObject::tr( "All files (*)" ) ); + filter.append( QObject::tr( "SAUV_FILES_FILTER" ) + " (*.sauv *.sauve)" ); + filter.append( QObject::tr( "ALL_FILES_FILTER" ) + " (*)" ); } else if ( theCommandID == SMESHOp::OpImportGMF ) { filter.append( QObject::tr( "GMF_ASCII_FILES_FILTER" ) + " (*.mesh)" ); @@ -640,8 +640,7 @@ namespace // Get parameters of export operation - QString aFilename; - SMESH::MED_VERSION aFormat = SMESH::MED_V2_2; + QString aFilename; // Init the parameters with the default values bool aIsASCII_STL = true; bool toCreateGroups = false; @@ -718,27 +717,14 @@ namespace } else if ( isMED || isSAUV ) // Export to MED or SAUV { - QMap aFilterMap; - //QString v21 (aMesh->GetVersionString(SMESH::MED_V2_1, 2)); + QStringList filters; if ( isMED ) { - QString v22 (aMesh->GetVersionString(SMESH::MED_V2_2, 2)); - //aFilterMap.insert( QObject::tr( "MED_VX_FILES_FILTER" ).arg( v21 ) + " (*.med)", SMESH::MED_V2_1 ); - aFilterMap.insert( QObject::tr( "MED_VX_FILES_FILTER" ).arg( v22 ) + " (*.med)", SMESH::MED_V2_2 ); + filters << QObject::tr( "MED_FILES_FILTER" ) + " (*.med)"; } else { // isSAUV - aFilterMap.insert("All files (*)", SMESH::MED_V2_1 ); - aFilterMap.insert("SAUV files (*.sauv)", SMESH::MED_V2_2 ); - aFilterMap.insert("SAUV files (*.sauve)", SMESH::MED_V2_1 ); + filters << QObject::tr( "SAUV_FILES_FILTER" ) + " (*.sauv *.sauve)"; } - QStringList filters; - QString aDefaultFilter; - QMap::const_iterator it = aFilterMap.begin(); - for ( ; it != aFilterMap.end(); ++it ) { - filters.push_back( it.key() ); - if (it.value() == SMESH::MED_V2_2) - aDefaultFilter = it.key(); - } QStringList checkBoxes; checkBoxes << QObject::tr("SMESH_AUTO_GROUPS") << QObject::tr("SMESH_AUTO_DIM"); @@ -751,7 +737,6 @@ namespace new SalomeApp_CheckFileDlg ( SMESHGUI::desktop(), false, checkBoxes, true, true, wdgList ); fd->setWindowTitle( aTitle ); fd->setNameFilters( filters ); - fd->selectNameFilter( aDefaultFilter ); fd->SetChecked( toCreateGroups, 0 ); fd->SetChecked( toFindOutDim, 1 ); if ( !anInitialPath.isEmpty() ) @@ -779,34 +764,13 @@ namespace aFilename = QString::null; break; } - aFormat = aFilterMap[fd->selectedNameFilter()]; toOverwrite = fv->isOverwrite(); is_ok = true; if ( !aFilename.isEmpty() ) { - // med-2.1 does not support poly elements - if ( aFormat==SMESH::MED_V2_1 ) - for( aMeshIter = aMeshList.begin(); aMeshIter != aMeshList.end(); aMeshIter++ ) { - SMESH::SMESH_IDSource_var aMeshItem = (*aMeshIter).first; - SMESH::long_array_var nbElems = aMeshItem->GetMeshInfo(); - if ( nbElems[ SMESH::Entity_Polygon ] + nbElems[ SMESH::Entity_Quad_Polygon ] + - nbElems[ SMESH::Entity_Polyhedra ] + nbElems[ SMESH::Entity_Quad_Polyhedra ]) - { - int aRet = SUIT_MessageBox::warning(SMESHGUI::desktop(), - QObject::tr("SMESH_WRN_WARNING"), - QObject::tr("SMESH_EXPORT_MED_V2_1").arg((*aMeshIter).second), - QObject::tr("SMESH_BUT_YES"), - QObject::tr("SMESH_BUT_NO"), 0, 1); - if (aRet != 0) { - is_ok = false; - break; - } - } - } if( !toOverwrite ) { // can't append to an existing using other format - SMESH::MED_VERSION aVersion = SMESH::MED_V2_1; - bool isVersionOk = SMESHGUI::GetSMESHGen()->GetMEDVersion( aFilename.toUtf8().constData(), aVersion ); - if( !isVersionOk || aVersion != aFormat ) { + bool isVersionOk = SMESHGUI::GetSMESHGen()->CheckCompatibility( aFilename.toUtf8().constData() ); + if ( !isVersionOk ) { int aRet = SUIT_MessageBox::warning(SMESHGUI::desktop(), QObject::tr("SMESH_WRN_WARNING"), QObject::tr("SMESH_EXPORT_MED_VERSION_COLLISION").arg(aFilename), @@ -892,10 +856,10 @@ namespace const bool hasFields = ( fields.length() || !geoAssFields.isEmpty() ); if ( !hasFields && aMeshOrGroup->_is_equivalent( aMeshItem )) aMeshItem->ExportToMEDX( aFilename.toUtf8().data(), toCreateGroups, - aFormat, toOverwrite && aMeshIndex == 0, toFindOutDim ); + toOverwrite && aMeshIndex == 0, toFindOutDim ); else aMeshItem->ExportPartToMED( aMeshOrGroup, aFilename.toUtf8().data(), toCreateGroups, - aFormat, toOverwrite && aMeshIndex == 0, toFindOutDim, + toOverwrite && aMeshIndex == 0, toFindOutDim, fields, geoAssFields.toLatin1().data() ); } } diff --git a/src/SMESHGUI/SMESH_msg_en.ts b/src/SMESHGUI/SMESH_msg_en.ts index ec5537169..4f68dc2a6 100644 --- a/src/SMESHGUI/SMESH_msg_en.ts +++ b/src/SMESHGUI/SMESH_msg_en.ts @@ -11,6 +11,10 @@ MED_FILES_FILTER MED files + + SAUV_FILES_FILTER + SAUV files + IDEAS_FILES_FILTER IDEAS files @@ -23,10 +27,6 @@ TEXT_FILES_FILTER TXT files - - MED_VX_FILES_FILTER - MED %1 files - STL_FILES_FILTER STL files @@ -1764,13 +1764,6 @@ Do you want to continue? SMESH_EXPORT_ONLY_GPOUP You are going to export the group without its mesh. Do you want to continue? - - - SMESH_EXPORT_MED_V2_1 - During export mesh with name - "%1" to MED 2.1 -polygons and polyhedrons elements will be missed -For correct export use MED 2.2 -Are you sure want to export to MED 2.1? SMESH_EXPORT_MED_VERSION_COLLISION diff --git a/src/SMESHGUI/SMESH_msg_fr.ts b/src/SMESHGUI/SMESH_msg_fr.ts index 258d8ad78..a8791df48 100755 --- a/src/SMESHGUI/SMESH_msg_fr.ts +++ b/src/SMESHGUI/SMESH_msg_fr.ts @@ -11,6 +11,10 @@ MED_FILES_FILTER Fichiers MED + + SAUV_FILES_FILTER + Fichiers SAUV + IDEAS_FILES_FILTER Fichiers IDEAS @@ -23,10 +27,6 @@ TEXT_FILES_FILTER Fichiers TXT - - MED_VX_FILES_FILTER - Fichiers MED %1 - STL_FILES_FILTER Fichiers STL @@ -1748,13 +1748,6 @@ Voulez-vous continuer ? SMESH_EXPORT_ONLY_GPOUP Vous allez export le groupe sans son maillage. Voulez-vous continuer ? - - - SMESH_EXPORT_MED_V2_1 - Les éléments polygonaux et polyèdriques seront omis -dans le cas d'exportation du maillage "%1" à MED 2.1 -Utilisez MED 2.2 pour l'exportation correcte. -Voulez-vous effectuer l'exportation à MED 2.1 ? SMESH_EXPORT_MED_VERSION_COLLISION diff --git a/src/SMESHGUI/SMESH_msg_ja.ts b/src/SMESHGUI/SMESH_msg_ja.ts index d18673c16..c877ebeb7 100644 --- a/src/SMESHGUI/SMESH_msg_ja.ts +++ b/src/SMESHGUI/SMESH_msg_ja.ts @@ -11,6 +11,10 @@ MED_FILES_FILTER MEDファイル + + SAUV_FILES_FILTER + SAUVファイル + IDEAS_FILES_FILTER IDEAS ファイル @@ -23,10 +27,6 @@ TEXT_FILES_FILTER TXT ファイル - - MED_VX_FILES_FILTER - ファイル MED %1 - STL_FILES_FILTER STL ファイル @@ -1731,10 +1731,6 @@ SMESH_EXPORT_ONLY_GPOUP そのメッシュなしでグループのエクスポートをしようとしています。続行しますか? - - SMESH_EXPORT_MED_V2_1 - 多角形、多面体要素は正しいエクスポート用 MED 2.1 MED 2.2 にメッシュ '%' のエクスポートの場合省略されます。MED 2.1 をエクスポートしますか。 - SMESH_EXPORT_MED_VERSION_COLLISION ファイル「%1」MED バージョンは知られていないか、選択したバージョンと一致しません。ファイルを上書きしますか。 diff --git a/src/SMESH_I/CMakeLists.txt b/src/SMESH_I/CMakeLists.txt index 155916e38..37683dacf 100644 --- a/src/SMESH_I/CMakeLists.txt +++ b/src/SMESH_I/CMakeLists.txt @@ -114,7 +114,7 @@ SET(SMESHEngine_HEADERS SET(SMESHEngine_SOURCES SMESH_Gen_i.cxx SMESH_Gen_i_1.cxx - SMESH_DumpPython.cxx + SMESH_PythonDump.cxx SMESH_Mesh_i.cxx SMESH_subMesh_i.cxx SMESH_MeshEditor_i.cxx diff --git a/src/SMESH_I/SMESH_2smeshpy.cxx b/src/SMESH_I/SMESH_2smeshpy.cxx index 17ee75746..ba4b90f06 100644 --- a/src/SMESH_I/SMESH_2smeshpy.cxx +++ b/src/SMESH_I/SMESH_2smeshpy.cxx @@ -440,6 +440,18 @@ namespace { } } } + + bool _FilterArg( const _AString& theArg ) + { + static std::list<_AString> filteredArgs; + static bool initialized = false; + if ( !initialized ) { + initialized = true; + filteredArgs.push_back( "SMESH.MED_V2_1" ); + filteredArgs.push_back( "SMESH.MED_V2_2" ); + } + return std::find( filteredArgs.begin(), filteredArgs.end(), theArg ) != filteredArgs.end(); + } } //================================================================================ @@ -1978,12 +1990,21 @@ void _pyMesh::Process( const Handle(_pyCommand)& theCommand ) method == "ExportToMEDX" ) // ExportToMEDX() --> ExportMED() { theCommand->SetMethod( "ExportMED" ); - if ( theCommand->GetNbArgs() == 5 ) + // filter out deprecated version parameter + vector< _AString > args; + for ( int i = 1; i <= theCommand->GetNbArgs(); i++ ) { + if ( !_FilterArg( theCommand->GetArg( i ) ) ) + args.push_back( theCommand->GetArg( i ) ); + } + theCommand->RemoveArgs(); + for ( uint i = 0; i < args.size(); i++ ) + theCommand->SetArg( i+1, args[i] ); + if ( theCommand->GetNbArgs() == 4 ) { // ExportToMEDX(...,autoDimension) -> ExportToMEDX(...,meshPart=None,autoDimension) - _AString autoDimension = theCommand->GetArg( 5 ); - theCommand->SetArg( 5, "None" ); - theCommand->SetArg( 6, autoDimension ); + _AString autoDimension = theCommand->GetArg( 4 ); + theCommand->SetArg( 4, "None" ); + theCommand->SetArg( 5, autoDimension ); } } else if ( method == "ExportCGNS" ) @@ -2009,6 +2030,15 @@ void _pyMesh::Process( const Handle(_pyCommand)& theCommand ) TCollection_AsciiString newMethod = method; newMethod.Remove( /*where=*/7, /*howmany=*/6 ); theCommand->SetMethod( newMethod ); + // filter out deprecated version parameter + vector< _AString > args; + for ( int i = 1; i <= theCommand->GetNbArgs(); i++ ) { + if ( !_FilterArg( theCommand->GetArg( i ) ) ) + args.push_back( theCommand->GetArg( i ) ); + } + theCommand->RemoveArgs(); + for ( uint i = 0; i < args.size(); i++ ) + theCommand->SetArg( i+1, args[i] ); // make the 1st arg be the last one (or last but three for ExportMED()) _pyID partID = theCommand->GetArg( 1 ); int nbArgs = theCommand->GetNbArgs() - 3 * (newMethod == "ExportMED"); diff --git a/src/SMESH_I/SMESH_Gen_i.cxx b/src/SMESH_I/SMESH_Gen_i.cxx index 64e0c3e69..858f1eedc 100644 --- a/src/SMESH_I/SMESH_Gen_i.cxx +++ b/src/SMESH_I/SMESH_Gen_i.cxx @@ -131,6 +131,7 @@ #include #include +#include #include #include @@ -2955,6 +2956,22 @@ SMESH::SMESH_Mesh_ptr SMESH_Gen_i::CopyMesh(SMESH::SMESH_IDSource_ptr meshPart, return newMesh._retn(); } +//================================================================================ +/*! + * \brief Get version of MED format being used. + */ +//================================================================================ + +char* SMESH_Gen_i::GetMEDFileVersion() +{ + MED::TInt majeur, mineur, release; + majeur = mineur = release = 0; + MED::GetVersionRelease(majeur, mineur, release); + std::ostringstream version; + version << majeur << "." << mineur << "." << release; + return CORBA::string_dup( version.str().c_str() ); +} + //================================================================================ /*! * SMESH_Gen_i::GetMEDVersion @@ -2962,20 +2979,22 @@ SMESH::SMESH_Mesh_ptr SMESH_Gen_i::CopyMesh(SMESH::SMESH_IDSource_ptr meshPart, * Get MED version of the file by its name */ //================================================================================ -CORBA::Boolean SMESH_Gen_i::GetMEDVersion(const char* theFileName, - SMESH::MED_VERSION& theVersion) +char* SMESH_Gen_i::GetMEDVersion(const char* theFileName) { - theVersion = SMESH::MED_V2_2; - - int major, minor, release; - bool result = MED::GetMEDVersion( theFileName, major, minor, release ); - if ( result ) { - int version = major * 100 + minor; - if ( version < 202 ) theVersion = SMESH::MED_V2_1; - else theVersion = SMESH::MED_V2_2; - } + std::string version = MED::GetMEDVersion( theFileName ); + return CORBA::string_dup( version.c_str() ); +} - return result; +//================================================================================ +/*! + * SMESH_Gen_i::CheckCompatibility + * + * Check compatibility of file with MED format being used. + */ +//================================================================================ +CORBA::Boolean SMESH_Gen_i::CheckCompatibility(const char* theFileName) +{ + return MED::CheckCompatibility( theFileName ); } //================================================================================ diff --git a/src/SMESH_I/SMESH_Gen_i.hxx b/src/SMESH_I/SMESH_Gen_i.hxx index 1e869462c..f8c6a552e 100644 --- a/src/SMESH_I/SMESH_Gen_i.hxx +++ b/src/SMESH_I/SMESH_Gen_i.hxx @@ -378,9 +378,14 @@ public: CORBA::Double mergeTolerance) throw ( SALOME::SALOME_Exception ); + // Get version of MED format being used. + char* GetMEDFileVersion(); + // Get MED version of the file by its name - CORBA::Boolean GetMEDVersion(const char* theFileName, - SMESH::MED_VERSION& theVersion); + char* GetMEDVersion(const char* theFileName); + + // Check compatibility of file with MED format being used. + CORBA::Boolean CheckCompatibility(const char* theFileName); // Get names of meshes defined in file with the specified name SMESH::string_array* GetMeshNames(const char* theFileName); diff --git a/src/SMESH_I/SMESH_Mesh_i.cxx b/src/SMESH_I/SMESH_Mesh_i.cxx index f2712cab2..38f9afd27 100644 --- a/src/SMESH_I/SMESH_Mesh_i.cxx +++ b/src/SMESH_I/SMESH_Mesh_i.cxx @@ -406,8 +406,8 @@ SMESH_Mesh_i::ImportMEDFile( const char* theFileName, const char* theMeshName ) CreateGroupServants(); int major, minor, release; - if( !MED::GetMEDVersion( theFileName, major, minor, release ) ) - major = minor = release = -1; + major = minor = release = 0; + MED::GetMEDVersion(theFileName, major, minor, release); _medFileInfo = new SMESH::MedFileInfo(); _medFileInfo->fileName = theFileName; _medFileInfo->fileSize = 0; @@ -447,18 +447,6 @@ SMESH::DriverMED_ReadStatus SMESH_Mesh_i::ImportCGNSFile( const char* theFileNa return ConvertDriverMEDReadStatus(status); } -//================================================================================ -/*! - * \brief Return string representation of a MED file version comprising nbDigits - */ -//================================================================================ - -char* SMESH_Mesh_i::GetVersionString(SMESH::MED_VERSION version, CORBA::Short nbDigits) -{ - string ver = DriverMED_W_SMESHDS_Mesh::GetVersionString(nbDigits); - return CORBA::string_dup( ver.c_str() ); -} - //============================================================================= /*! * ImportUNVFile @@ -3010,7 +2998,6 @@ string SMESH_Mesh_i::prepareMeshNameAndGroups(const char* file, void SMESH_Mesh_i::ExportToMEDX (const char* file, CORBA::Boolean auto_groups, - SMESH::MED_VERSION theVersion, CORBA::Boolean overwrite, CORBA::Boolean autoDimension) throw(SALOME::SALOME_Exception) @@ -3020,11 +3007,11 @@ void SMESH_Mesh_i::ExportToMEDX (const char* file, _preMeshInfo->FullLoadFromFile(); string aMeshName = prepareMeshNameAndGroups(file, overwrite); - _impl->ExportMED( file, aMeshName.c_str(), auto_groups, theVersion, 0, autoDimension ); + _impl->ExportMED( file, aMeshName.c_str(), auto_groups, 0, autoDimension ); TPythonDump() << SMESH::SMESH_Mesh_var(_this()) << ".ExportToMEDX( r'" << file << "', " << auto_groups << ", " - << theVersion << ", " << overwrite << ", " + << overwrite << ", " << autoDimension << " )"; SMESH_CATCH( SMESH::throwCorbaException ); @@ -3037,11 +3024,10 @@ void SMESH_Mesh_i::ExportToMEDX (const char* file, //================================================================================ void SMESH_Mesh_i::ExportToMED (const char* file, - CORBA::Boolean auto_groups, - SMESH::MED_VERSION theVersion) + CORBA::Boolean auto_groups) throw(SALOME::SALOME_Exception) { - ExportToMEDX(file,auto_groups,theVersion,true); + ExportToMEDX(file, auto_groups, true); } //================================================================================ @@ -3054,7 +3040,7 @@ void SMESH_Mesh_i::ExportMED (const char* file, CORBA::Boolean auto_groups) throw(SALOME::SALOME_Exception) { - ExportToMEDX(file,auto_groups,SMESH::MED_V2_2,true); + ExportToMEDX(file, auto_groups, true); } //================================================================================ @@ -3157,7 +3143,6 @@ void SMESH_Mesh_i::ExportSTL (const char *file, const bool isascii) void SMESH_Mesh_i::ExportPartToMED(SMESH::SMESH_IDSource_ptr meshPart, const char* file, CORBA::Boolean auto_groups, - SMESH::MED_VERSION version, CORBA::Boolean overwrite, CORBA::Boolean autoDimension, const GEOM::ListOfFields& fields, @@ -3211,7 +3196,7 @@ void SMESH_Mesh_i::ExportPartToMED(SMESH::SMESH_IDSource_ptr meshPart, { aMeshName = prepareMeshNameAndGroups(file, overwrite); _impl->ExportMED( file, aMeshName.c_str(), auto_groups, - version, 0, autoDimension, /*addODOnVertices=*/have0dField); + 0, autoDimension, /*addODOnVertices=*/have0dField); meshDS = _impl->GetMeshDS(); } else @@ -3231,7 +3216,7 @@ void SMESH_Mesh_i::ExportPartToMED(SMESH::SMESH_IDSource_ptr meshPart, } SMESH_MeshPartDS* partDS = new SMESH_MeshPartDS( meshPart ); _impl->ExportMED( file, aMeshName.c_str(), auto_groups, - version, partDS, autoDimension, /*addODOnVertices=*/have0dField); + partDS, autoDimension, /*addODOnVertices=*/have0dField); meshDS = tmpDSDeleter._obj = partDS; } @@ -3257,7 +3242,7 @@ void SMESH_Mesh_i::ExportPartToMED(SMESH::SMESH_IDSource_ptr meshPart, } TPythonDump() << _this() << ".ExportPartToMED( " << meshPart << ", r'" << file << "', " - << auto_groups << ", " << version << ", " << overwrite << ", " + << auto_groups << ", " << overwrite << ", " << autoDimension << ", " << goList << ", '" << ( geomAssocFields ? geomAssocFields : "" ) << "'" << " )"; diff --git a/src/SMESH_I/SMESH_Mesh_i.hxx b/src/SMESH_I/SMESH_Mesh_i.hxx index 8aaa79bae..47230bd9b 100644 --- a/src/SMESH_I/SMESH_Mesh_i.hxx +++ b/src/SMESH_I/SMESH_Mesh_i.hxx @@ -228,19 +228,13 @@ public: * Consider maximum group name length stored in MED file. */ CORBA::Boolean HasDuplicatedGroupNamesMED(); - /*! - * Return string representation of a MED file version comprising nbDigits - */ - char* GetVersionString(SMESH::MED_VERSION version, CORBA::Short nbDigits); void ExportToMEDX( const char* file, CORBA::Boolean auto_groups, - SMESH::MED_VERSION version, CORBA::Boolean overwrite, CORBA::Boolean autoDimension=true) throw (SALOME::SALOME_Exception); void ExportToMED ( const char* file, - CORBA::Boolean auto_groups, - SMESH::MED_VERSION version ) throw (SALOME::SALOME_Exception); + CORBA::Boolean auto_groups ) throw (SALOME::SALOME_Exception); void ExportMED ( const char* file, CORBA::Boolean auto_groups ) throw (SALOME::SALOME_Exception); @@ -259,7 +253,6 @@ public: void ExportPartToMED(SMESH::SMESH_IDSource_ptr meshPart, const char* file, CORBA::Boolean auto_groups, - SMESH::MED_VERSION version, CORBA::Boolean overwrite, CORBA::Boolean autoDim, const GEOM::ListOfFields& fields, diff --git a/src/SMESH_I/SMESH_DumpPython.cxx b/src/SMESH_I/SMESH_PythonDump.cxx similarity index 99% rename from src/SMESH_I/SMESH_DumpPython.cxx rename to src/SMESH_I/SMESH_PythonDump.cxx index e22a87c77..a46c9b513 100644 --- a/src/SMESH_I/SMESH_DumpPython.cxx +++ b/src/SMESH_I/SMESH_PythonDump.cxx @@ -472,7 +472,6 @@ namespace SMESH return *this; } - TPythonDump& TPythonDump:: operator<<(SMESH_Gen_i* theArg) { myStream << SMESHGenName(); return *this; @@ -488,17 +487,6 @@ namespace SMESH myStream << theStr; return *this; } - - TPythonDump& TPythonDump::operator<<(SMESH::MED_VERSION theVersion) - { - switch (theVersion) { - case SMESH::MED_V2_1: myStream << "SMESH.MED_V2_1"; break; - case SMESH::MED_V2_2: myStream << "SMESH.MED_V2_2"; break; - default: myStream << theVersion; - } - return *this; - } - TPythonDump& TPythonDump::operator<<(const SMESH::AxisStruct & theAxis) { *this << "SMESH.AxisStruct( " diff --git a/src/SMESH_I/SMESH_PythonDump.hxx b/src/SMESH_I/SMESH_PythonDump.hxx index 7fb82c564..a1e213b4f 100644 --- a/src/SMESH_I/SMESH_PythonDump.hxx +++ b/src/SMESH_I/SMESH_PythonDump.hxx @@ -201,9 +201,6 @@ namespace SMESH TPythonDump& operator<<(SMESH_MeshEditor_i* theArg); - TPythonDump& - operator<<(SMESH::MED_VERSION theArg); - TPythonDump& operator<<(const SMESH::AxisStruct & theAxis); diff --git a/src/SMESH_SWIG/smeshBuilder.py b/src/SMESH_SWIG/smeshBuilder.py index f289a5fe7..f9f4fda87 100644 --- a/src/SMESH_SWIG/smeshBuilder.py +++ b/src/SMESH_SWIG/smeshBuilder.py @@ -84,6 +84,10 @@ import salome from salome.geom import geomBuilder import SMESH # This is necessary for back compatibility +import omniORB # back compatibility +SMESH.MED_V2_1 = omniORB.EnumItem("MED_V2_1", 0) # back compatibility +SMESH.MED_V2_2 = omniORB.EnumItem("MED_V2_2", 1) # back compatibility + from SMESH import * from salome.smesh.smesh_algorithm import Mesh_Algorithm @@ -1789,13 +1793,10 @@ class Mesh: ## Export the mesh in a file in MED format ## allowing to overwrite the file if it exists or add the exported data to its contents - # @param f is the file name + # @param fileName is the file name # @param auto_groups boolean parameter for creating/not creating # the groups Group_On_All_Nodes, Group_On_All_Faces, ... ; # the typical use is auto_groups=False. - # @param version MED format version (MED_V2_1 or MED_V2_2, - # the latter meaning any current version). The parameter is - # obsolete since MED_V2_1 is no longer supported. # @param overwrite boolean parameter for overwriting/not overwriting the file # @param meshPart a part of mesh (group, sub-mesh) to export instead of the mesh # @param autoDimension if @c True (default), a space dimension of a MED mesh can be either @@ -1811,17 +1812,33 @@ class Mesh: # - 'f' stands for "_faces _" field; # - 's' stands for "_solids _" field. # @ingroup l2_impexp - def ExportMED(self, f, auto_groups=0, version=MED_V2_2, - overwrite=1, meshPart=None, autoDimension=True, fields=[], geomAssocFields=''): + def ExportMED(self, *args, **kwargs): + # process positional arguments + args = [i for i in args if i not in [SMESH.MED_V2_1, SMESH.MED_V2_2]] # backward compatibility + fileName = args[0] + auto_groups = args[1] if len(args) > 1 else 0 + overwrite = args[2] if len(args) > 2 else 1 + meshPart = args[3] if len(args) > 3 else None + autoDimension = args[4] if len(args) > 4 else True + fields = args[5] if len(args) > 5 else [] + geomAssocFields = args[6] if len(args) > 6 else '' + # process keywords arguments + auto_groups = kwargs.get("auto_groups", auto_groups) + overwrite = kwargs.get("overwrite", overwrite) + meshPart = kwargs.get("meshPart", meshPart) + autoDimension = kwargs.get("autoDimension", autoDimension) + fields = kwargs.get("fields", fields) + geomAssocFields = kwargs.get("geomAssocFields", geomAssocFields) + # invoke engine's function if meshPart or fields or geomAssocFields: unRegister = genObjUnRegister() if isinstance( meshPart, list ): meshPart = self.GetIDSource( meshPart, SMESH.ALL ) unRegister.set( meshPart ) - self.mesh.ExportPartToMED( meshPart, f, auto_groups, version, overwrite, autoDimension, + self.mesh.ExportPartToMED( meshPart, fileName, auto_groups, overwrite, autoDimension, fields, geomAssocFields) else: - self.mesh.ExportToMEDX(f, auto_groups, version, overwrite, autoDimension) + self.mesh.ExportToMEDX(fileName, auto_groups, overwrite, autoDimension) ## Export the mesh in a file in SAUV format # @param f is the file name @@ -1911,10 +1928,7 @@ class Mesh: ## Deprecated, used only for compatibility! Please, use ExportMED() method instead. # Export the mesh in a file in MED format # allowing to overwrite the file if it exists or add the exported data to its contents - # @param f the file name - # @param version MED format version (MED_V2_1 or MED_V2_2, - # the latter meaning any current version). The parameter is - # obsolete since MED_V2_1 is no longer supported. + # @param fileName the file name # @param opt boolean parameter for creating/not creating # the groups Group_On_All_Nodes, Group_On_All_Faces, ... # @param overwrite boolean parameter for overwriting/not overwriting the file @@ -1924,8 +1938,19 @@ class Mesh: # - 3D in the rest cases.
# If @a autoDimension is @c False, the space dimension is always 3. # @ingroup l2_impexp - def ExportToMED(self, f, version=MED_V2_2, opt=0, overwrite=1, autoDimension=True): - self.mesh.ExportToMEDX(f, opt, version, overwrite, autoDimension) + def ExportToMED(self, *args, **kwargs): + # process positional arguments + args = [i for i in args if i not in [SMESH.MED_V2_1, SMESH.MED_V2_2]] # backward compatibility + fileName = args[0] + opt = args[1] if len(args) > 1 else 0 + overwrite = args[2] if len(args) > 2 else 1 + autoDimension = args[3] if len(args) > 3 else True + # process keywords arguments + opt = kwargs.get("opt", opt) + overwrite = kwargs.get("overwrite", overwrite) + autoDimension = kwargs.get("autoDimension", autoDimension) + # invoke engine's function + self.mesh.ExportToMEDX(fileName, opt, overwrite, autoDimension) # Operations with groups: # ---------------------- diff --git a/src/Tools/ZCracksPlug/casTests/genereCube.py b/src/Tools/ZCracksPlug/casTests/genereCube.py index 2ab20472e..feeb4ae71 100644 --- a/src/Tools/ZCracksPlug/casTests/genereCube.py +++ b/src/Tools/ZCracksPlug/casTests/genereCube.py @@ -109,7 +109,7 @@ def cube3D(L, N, outFile): aFilter_1.SetMesh(Maillage_1.GetMesh()) FACE_temp = Maillage_1.GroupOnFilter( SMESH.FACE, noms[cont], aFilter_1 ) - Maillage_1.ExportMED( outFile, 0, SMESH.MED_V2_2, 1, None ,1) + Maillage_1.ExportMED(outFile) #if salome.sg.hasDesktop(): #salome.sg.updateObjBrowser(1) @@ -191,7 +191,7 @@ def cube2D(L, N, outFile): aFilter_1.SetMesh(Maillage_1.GetMesh()) EDGE_temp = Maillage_1.GroupOnFilter( SMESH.EDGE, noms[cont], aFilter_1 ) - Maillage_1.ExportMED( outFile, 0, SMESH.MED_V2_2, 1, None ,1) + Maillage_1.ExportMED(outFile) #if salome.sg.hasDesktop(): #salome.sg.updateObjBrowser(1) \ No newline at end of file diff --git a/src/Tools/ZCracksPlug/ellipse.py b/src/Tools/ZCracksPlug/ellipse.py index 9ffeb8b66..7130d0931 100644 --- a/src/Tools/ZCracksPlug/ellipse.py +++ b/src/Tools/ZCracksPlug/ellipse.py @@ -189,7 +189,7 @@ def generate(data_demi_grand_axe, data_centre, data_normale, Maillage=uF.meshCrack(FACE_FISSURE, minSize, maxSize, chordal, dim) try: - Maillage.ExportMED( outFile, 0, SMESH.MED_V2_2, 1, None ,1) + Maillage.ExportMED(outFile) smesh.SetName(Maillage.GetMesh(), 'MAILLAGE_FISSURE') except: print 'ExportToMEDX() failed. Invalid file name?' diff --git a/src/Tools/ZCracksPlug/genereCrack.py b/src/Tools/ZCracksPlug/genereCrack.py index 372772b43..9389fecff 100644 --- a/src/Tools/ZCracksPlug/genereCrack.py +++ b/src/Tools/ZCracksPlug/genereCrack.py @@ -228,7 +228,7 @@ def generateCustom(crack, outFile): else: Group_1 = Maillage_1.CreateEmptyGroup( SMESH.NODE, 'crack' ) nbAdd = Group_1.AddFrom( Maillage_1.GetMesh() ) - Maillage_1.ExportMED( outFile, 0, SMESH.MED_V2_2, 1, None ,1) + Maillage_1.ExportMED(outFile) return(True) diff --git a/src/Tools/ZCracksPlug/rectangle.py b/src/Tools/ZCracksPlug/rectangle.py index 2f6933e25..155e2531e 100644 --- a/src/Tools/ZCracksPlug/rectangle.py +++ b/src/Tools/ZCracksPlug/rectangle.py @@ -216,7 +216,7 @@ def generate(data_longueur,data_largeur,data_centre, Maillage=uF.meshCrack(FACE_FISSURE, minSize, maxSize, chordal, dim) try: - Maillage.ExportMED( outFile, 0, SMESH.MED_V2_2, 1, None ,1) + Maillage.ExportMED(outFile) smesh.SetName(Maillage.GetMesh(), 'MAILLAGE_FISSURE') except: print 'ExportToMEDX() failed. Invalid file name?' diff --git a/src/Tools/ZCracksPlug/sphere.py b/src/Tools/ZCracksPlug/sphere.py index 79542b2c5..7b8bbf954 100644 --- a/src/Tools/ZCracksPlug/sphere.py +++ b/src/Tools/ZCracksPlug/sphere.py @@ -57,7 +57,7 @@ def generate(data_rayon,data_centre,outFile): Maillage=uF.meshCrack(FACE_FISSURE, minSize, maxSize, chordal, dim=3) try: - Maillage.ExportMED( outFile, 0, SMESH.MED_V2_2, 1, None ,1) + Maillage.ExportMED(outFile) smesh.SetName(Maillage.GetMesh(), 'MAILLAGE_FISSURE') except: print 'ExportToMEDX() failed. Invalid file name?' diff --git a/src/Tools/ZCracksPlug/utilityFunctions.py b/src/Tools/ZCracksPlug/utilityFunctions.py index 36db72580..e53e63925 100644 --- a/src/Tools/ZCracksPlug/utilityFunctions.py +++ b/src/Tools/ZCracksPlug/utilityFunctions.py @@ -227,7 +227,7 @@ def extendElsets(meshFile, outFile=None): if len(front)==0: crackOnly=False if crackOnly: - mesh.ExportMED(outFile, 0, SMESH.MED_V2_2, 1, None ,1) + mesh.ExportMED(outFile) return('crack') # Propagates color using elem connectivity @@ -298,7 +298,7 @@ def extendElsets(meshFile, outFile=None): mesh.MakeGroupByIds('Extended_side%d' %n ,SMESH.EDGE,grElemList[2][n]) if outFile==None: outFile=meshFile - mesh.ExportMED(outFile, 0, SMESH.MED_V2_2, 1, None ,1) + mesh.ExportMED(outFile) return(True) @@ -422,7 +422,7 @@ def getMaxAspectRatio(tmpdir): #for elem in surfElemList: #maxAR=max(mesh.GetAspectRatio(elem),maxAR) - #mesh.ExportMED(meshFile, 0, SMESH.MED_V2_2, 1, None ,1) + #mesh.ExportMED(meshFile) #return(maxAR) diff --git a/src/Tools/blocFissure/exemple2.py b/src/Tools/blocFissure/exemple2.py index 1b0141f65..e03da8d7d 100644 --- a/src/Tools/blocFissure/exemple2.py +++ b/src/Tools/blocFissure/exemple2.py @@ -59,7 +59,7 @@ Quadrangle_2D = boite.Quadrangle(algo=smeshBuilder.QUADRANGLE) Hexa_3D = boite.Hexahedron(algo=smeshBuilder.Hexa) isDone = boite.Compute() smesh.SetName(boite, 'boite') -boite.ExportMED( r'boite.med', 0, SMESH.MED_V2_2, 1 ) +boite.ExportMED(r'boite.med') ## set object names smesh.SetName(boite.GetMesh(), 'boite') diff --git a/src/Tools/blocFissure/gmu/construitFissureGenerale.py b/src/Tools/blocFissure/gmu/construitFissureGenerale.py index 8db3cabb0..ad00d0a0e 100644 --- a/src/Tools/blocFissure/gmu/construitFissureGenerale.py +++ b/src/Tools/blocFissure/gmu/construitFissureGenerale.py @@ -328,7 +328,7 @@ def construitFissureGenerale(maillagesSains, fond = maillageComplet.GetMesh().CreateDimGroup( grps, SMESH.NODE, 'FACE2' ) logging.info("export maillage fini") - maillageComplet.ExportMED( fichierMaillageFissure, 0, SMESH.MED_V2_2, 1 ) + maillageComplet.ExportMED(fichierMaillageFissure) putName(maillageComplet, nomFicFissure) logging.info("fichier maillage fissure %s", fichierMaillageFissure) diff --git a/src/Tools/blocFissure/gmu/creeZoneDefautDansObjetSain.py b/src/Tools/blocFissure/gmu/creeZoneDefautDansObjetSain.py index d4270fcea..7bcd8c482 100644 --- a/src/Tools/blocFissure/gmu/creeZoneDefautDansObjetSain.py +++ b/src/Tools/blocFissure/gmu/creeZoneDefautDansObjetSain.py @@ -59,7 +59,7 @@ def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure, [origShapes, verticesShapes, dmoyen] = \ creeZoneDefautMaillage(maillagesSains, shapeDefaut, tailleDefaut, nomZones, coordsNoeudsFissure) - maillageSain.ExportMED( fichierMaillageSain, 0, SMESH.MED_V2_2, 1 ) + maillageSain.ExportMED(fichierMaillageSain) logging.debug("fichier maillage sain %s", fichierMaillageSain) [maillageSain, internalBoundary, zoneDefaut, zoneDefaut_skin, zoneDefaut_internalFaces, zoneDefaut_internalEdges] = \ peauInterne(fichierMaillageSain, shapeDefaut, nomZones) diff --git a/src/Tools/blocFissure/gmu/insereFissureElliptique.py b/src/Tools/blocFissure/gmu/insereFissureElliptique.py index de8fbeb17..7c54b4388 100644 --- a/src/Tools/blocFissure/gmu/insereFissureElliptique.py +++ b/src/Tools/blocFissure/gmu/insereFissureElliptique.py @@ -189,7 +189,7 @@ def insereFissureElliptique(geometriesSaines, maillagesSains, if step == 18: return None - maillageComplet.ExportMED( fichierMaillageFissure, 0, SMESH.MED_V2_2, 1 ) + maillageComplet.ExportMED(fichierMaillageFissure) putName(maillageComplet, nomFicFissure) logging.info("fichier maillage fissure : %s", fichierMaillageFissure) diff --git a/src/Tools/blocFissure/gmu/insereFissureGenerale.py b/src/Tools/blocFissure/gmu/insereFissureGenerale.py index a8619bdda..1b343a8ee 100644 --- a/src/Tools/blocFissure/gmu/insereFissureGenerale.py +++ b/src/Tools/blocFissure/gmu/insereFissureGenerale.py @@ -1373,7 +1373,7 @@ def insereFissureGenerale(maillagesSains, fond = maillageComplet.GetMesh().CreateDimGroup( grps, SMESH.NODE, 'FACE2' ) logging.info("export maillage fini") - maillageComplet.ExportMED( fichierMaillageFissure, 0, SMESH.MED_V2_2, 1 ) + maillageComplet.ExportMED(fichierMaillageFissure) putName(maillageComplet, nomFicFissure) logging.info("fichier maillage fissure %s", fichierMaillageFissure) diff --git a/src/Tools/blocFissure/gmu/insereFissureLongue.py b/src/Tools/blocFissure/gmu/insereFissureLongue.py index 347fb401c..a7ff04609 100644 --- a/src/Tools/blocFissure/gmu/insereFissureLongue.py +++ b/src/Tools/blocFissure/gmu/insereFissureLongue.py @@ -649,7 +649,7 @@ def insereFissureLongue(geometriesSaines, maillagesSains, #isDone = maillageComplet.ReorientObject( grps[0] ) fond = maillageComplet.GetMesh().CreateDimGroup( grps, SMESH.NODE, 'FACE2' ) - maillageComplet.ExportMED( fichierMaillageFissure, 0, SMESH.MED_V2_2, 1 ) + maillageComplet.ExportMED(fichierMaillageFissure) putName(maillageComplet, nomFicFissure) logging.info("fichier maillage fissure %s", fichierMaillageFissure) diff --git a/src/Tools/blocFissure/materielCasTests/cubeAngle.py b/src/Tools/blocFissure/materielCasTests/cubeAngle.py index a9c4769aa..647d71908 100644 --- a/src/Tools/blocFissure/materielCasTests/cubeAngle.py +++ b/src/Tools/blocFissure/materielCasTests/cubeAngle.py @@ -65,7 +65,7 @@ Quadrangle_2D = Mesh_1.Quadrangle(algo=smeshBuilder.QUADRANGLE) Hexa_3D = Mesh_1.Hexahedron(algo=smeshBuilder.Hexa) isDone = Mesh_1.Compute() smesh.SetName(Mesh_1, 'Mesh_1') -Mesh_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/CubeAngle.med"), 0, SMESH.MED_V2_2, 1 ) +Mesh_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/CubeAngle.med")) ## set object names smesh.SetName(Mesh_1.GetMesh(), 'Mesh_1') diff --git a/src/Tools/blocFissure/materielCasTests/cubeFin.py b/src/Tools/blocFissure/materielCasTests/cubeFin.py index 3eeb130df..567744020 100644 --- a/src/Tools/blocFissure/materielCasTests/cubeFin.py +++ b/src/Tools/blocFissure/materielCasTests/cubeFin.py @@ -124,7 +124,7 @@ smesh.SetName(ENCASTR_1, 'ENCASTR') smesh.SetName(cubeFin_1.GetMesh(), 'cubeFin') smesh.SetName(Nb_Segments_1, 'Nb. Segments_1') -cubeFin_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/cubeFin.med"), 0, SMESH.MED_V2_2, 1 ) +cubeFin_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/cubeFin.med")) if salome.sg.hasDesktop(): salome.sg.updateObjBrowser(True) diff --git a/src/Tools/blocFissure/materielCasTests/decoupeCylindre.py b/src/Tools/blocFissure/materielCasTests/decoupeCylindre.py index c43889c94..c3bb1911d 100644 --- a/src/Tools/blocFissure/materielCasTests/decoupeCylindre.py +++ b/src/Tools/blocFissure/materielCasTests/decoupeCylindre.py @@ -144,7 +144,7 @@ Nb_Segments_3 = Regular_1D_2.NumberOfSegments(6,[],[ ]) Nb_Segments_3.SetDistrType( 0 ) isDone = CylindreSain_1.Compute() smesh.SetName(CylindreSain_1, 'CylindreSain') -CylindreSain_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests//CylindreSain.med"), 0, SMESH.MED_V2_2, 1 ) +CylindreSain_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests//CylindreSain.med")) SubMesh_1 = Regular_1D_1.GetSubMesh() SubMesh_2 = Regular_1D_2.GetSubMesh() diff --git a/src/Tools/blocFissure/materielCasTests/disque_perce.py b/src/Tools/blocFissure/materielCasTests/disque_perce.py index 7fc7173dc..6b3ccc22e 100644 --- a/src/Tools/blocFissure/materielCasTests/disque_perce.py +++ b/src/Tools/blocFissure/materielCasTests/disque_perce.py @@ -71,7 +71,7 @@ status = Disque_1.AddHypothesis(Nb_Segments_2,Compound_4) Quadrangle_2D = Disque_1.Quadrangle(algo=smeshBuilder.QUADRANGLE) isDone = Disque_1.Compute() smesh.SetName(Disque_1, 'Disque') -Disque_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/disque.med"), 0, SMESH.MED_V2_2, 1 ) +Disque_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/disque.med")) SubMesh_1 = Regular_1D_1.GetSubMesh() SubMesh_2 = Regular_1D_2.GetSubMesh() diff --git a/src/Tools/blocFissure/materielCasTests/eprouvetteCourbe.py b/src/Tools/blocFissure/materielCasTests/eprouvetteCourbe.py index 343070352..78df7eef1 100644 --- a/src/Tools/blocFissure/materielCasTests/eprouvetteCourbe.py +++ b/src/Tools/blocFissure/materielCasTests/eprouvetteCourbe.py @@ -88,7 +88,7 @@ Nb_Segments_3 = Regular_1D_2.NumberOfSegments(25) Nb_Segments_3.SetDistrType( 0 ) isDone = EprouvetteCourbe_1.Compute() smesh.SetName(EprouvetteCourbe_1, 'EprouvetteCourbe') -EprouvetteCourbe_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/EprouvetteCourbe.med"), 0, SMESH.MED_V2_2, 1 ) +EprouvetteCourbe_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/EprouvetteCourbe.med")) SubMesh_1 = Regular_1D_1.GetSubMesh() SubMesh_2 = Regular_1D_2.GetSubMesh() diff --git a/src/Tools/blocFissure/materielCasTests/eprouvetteDroite.py b/src/Tools/blocFissure/materielCasTests/eprouvetteDroite.py index 1b2ef1c47..890a6f933 100644 --- a/src/Tools/blocFissure/materielCasTests/eprouvetteDroite.py +++ b/src/Tools/blocFissure/materielCasTests/eprouvetteDroite.py @@ -123,7 +123,7 @@ Nb_Segments_3 = Regular_1D_2.NumberOfSegments(10,[],[ ]) Nb_Segments_3.SetDistrType( 0 ) isDone = eprouvetteDroite_1.Compute() smesh.SetName(eprouvetteDroite_1, 'eprouvetteDroite') -eprouvetteDroite_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/eprouvetteDroite.med"), 0, SMESH.MED_V2_2, 1 ) +eprouvetteDroite_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/eprouvetteDroite.med")) SubMesh_1 = Regular_1D_1.GetSubMesh() SubMesh_2 = Regular_1D_2.GetSubMesh() diff --git a/src/Tools/blocFissure/materielCasTests/fissureGauche.py b/src/Tools/blocFissure/materielCasTests/fissureGauche.py index a6d4e3999..d8b87f1e1 100644 --- a/src/Tools/blocFissure/materielCasTests/fissureGauche.py +++ b/src/Tools/blocFissure/materielCasTests/fissureGauche.py @@ -117,7 +117,7 @@ Nb_Segments_3 = Regular_1D_2.NumberOfSegments(5,[],[ ]) Nb_Segments_3.SetDistrType( 0 ) isDone = objetSain_1.Compute() smesh.SetName(objetSain_1, 'objetSain') -objetSain_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/faceGaucheSain.med"), 0, SMESH.MED_V2_2, 1 ) +objetSain_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/faceGaucheSain.med")) SubMesh_1 = Regular_1D_1.GetSubMesh() SubMesh_2 = Regular_1D_2.GetSubMesh() diff --git a/src/Tools/blocFissure/materielCasTests/fissureGauche2.py b/src/Tools/blocFissure/materielCasTests/fissureGauche2.py index 0f08fd715..65dac7358 100644 --- a/src/Tools/blocFissure/materielCasTests/fissureGauche2.py +++ b/src/Tools/blocFissure/materielCasTests/fissureGauche2.py @@ -85,7 +85,7 @@ Quadrangle_2D = Mesh_1.Quadrangle(algo=smeshBuilder.QUADRANGLE) Hexa_3D = Mesh_1.Hexahedron(algo=smeshBuilder.Hexa) isDone = Mesh_1.Compute() smesh.SetName(Mesh_1, 'Mesh_1') -Mesh_1.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/boiteSaine.med"), 0, SMESH.MED_V2_2, 1 ) +Mesh_1.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/boiteSaine.med")) ## set object names smesh.SetName(Mesh_1.GetMesh(), 'Mesh_1') diff --git a/src/Tools/blocFissure/materielCasTests/vis.py b/src/Tools/blocFissure/materielCasTests/vis.py index ce9aa6805..21e0f2c1d 100644 --- a/src/Tools/blocFissure/materielCasTests/vis.py +++ b/src/Tools/blocFissure/materielCasTests/vis.py @@ -193,7 +193,7 @@ visHex80 = smesh.CopyMesh( coupe_vis_1, 'visHex80', 1, 0) [ tige_2, section_2, tige_haute_2, rond_2, tete_2, section_tete_2, conge_2, appui_2, p_imp_2, tige_rotated, tige_top, section_rotated, section_top, tige_haute_rotated, tige_haute_top, rond_rotated, rond_top, tete_rotated, tete_top, section_tete_rotated, section_tete_top, conge_rotated, conge_top, appui_rotated, appui_top, p_imp_rotated, p_imp_top ] = visHex80.GetGroups() Sub_mesh_1 = Regular_1D_1.GetSubMesh() Sub_mesh_2 = Regular_1D_2.GetSubMesh() -visHex80.ExportMED( os.path.join(gmu.pathBloc, "materielCasTests/visSain.med"), 0, SMESH.MED_V2_2, 1 ) +visHex80.ExportMED(os.path.join(gmu.pathBloc, "materielCasTests/visSain.med")) ## Set names of Mesh objects diff --git a/src/Tools/padder/spadderpy/gui/plugindialog.py b/src/Tools/padder/spadderpy/gui/plugindialog.py index 8bd4294a4..46c804aa5 100644 --- a/src/Tools/padder/spadderpy/gui/plugindialog.py +++ b/src/Tools/padder/spadderpy/gui/plugindialog.py @@ -210,7 +210,7 @@ class PluginDialog(QDialog): name. This returns the filename. ''' filename=str("/tmp/padder_inputfile_"+meshName+".med") - meshObject.ExportToMEDX( filename, 0, SMESH.MED_V2_2, 1, 1 ) + meshObject.ExportToMEDX( filename, 0, 1, 1 ) return filename def clear(self): -- 2.39.2