From: vsr Date: Mon, 12 Jan 2015 10:24:59 +0000 (+0300) Subject: Merge branch 'master' into V7_5_BR X-Git-Tag: V7_5_1rc1~1 X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=commitdiff_plain;h=2e9f6a1d3399b1ea9b366f969e81c725a5a5a628;hp=133cb381393ea728f6c6ff3a732738ecd1ad72d8 Merge branch 'master' into V7_5_BR --- diff --git a/CMakeLists.txt b/CMakeLists.txt index a88f8c23a..5d4bff026 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,11 +28,11 @@ CMAKE_POLICY(SET CMP0003 NEW) STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC) SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7) -SET(${PROJECT_NAME_UC}_MINOR_VERSION 4) +SET(${PROJECT_NAME_UC}_MINOR_VERSION 5) SET(${PROJECT_NAME_UC}_PATCH_VERSION 1) SET(${PROJECT_NAME_UC}_VERSION ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION}) -SET(${PROJECT_NAME_UC}_VERSION_DEV 1) +SET(${PROJECT_NAME_UC}_VERSION_DEV 0) # Find KERNEL # =========== diff --git a/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc b/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc index 8c38c8ddf..6ba10611e 100644 --- a/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc +++ b/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc @@ -168,8 +168,8 @@ The direction of the splitting is defined by the orientation of the underlying geometrical edge. "Reverse Edges" list box allows to specify the edges for which the splitting should be made in the direction opposing to their orientation. This list box is enabled only -if the geometry object is selected for the meshing. In this case the -user can select edges to be reversed either by directly picking them +if the geometry object is selected for the meshing. In this case it is +possible to select edges to be reversed either by directly picking them in the 3D viewer or by selecting the edges or groups of edges in the Object Browser. @@ -212,7 +212,7 @@ integral on the range between two nodes equal for all segments. pairs t - F(t), where \b t ranges from 0 to 1, and the module computes the formula, which will rule the change of length of segments and shows in the plot the density function curve in red and the node -distribution as blue crosses. The node distribution is computed the +distribution as blue crosses. The node distribution is computed in the same way as for \ref analyticdensity_anchor "Distribution with Analytic Density". You can select the Conversion mode from\b Exponent and Cut @@ -238,10 +238,10 @@ constructed on them. The direction of the splitting is defined by the orientation of the underlying geometrical edge. "Reverse Edges" list box allows to -specify the edges for which the splitting should be made in the +specify the edges, for which the splitting should be made in the direction opposing to their orientation. This list box is enabled only -if the geometry object is selected for the meshing. In this case the -user can select edges to be reversed either by directly picking them +if the geometry object is selected for the meshing. In this case it is +possible to select edges to be reversed either by directly picking them in the 3D viewer or by selecting the edges or groups of edges in the Object Browser. diff --git a/doc/salome/gui/SMESH/input/constructing_meshes.doc b/doc/salome/gui/SMESH/input/constructing_meshes.doc index 5d26cae6c..2a1a0c3aa 100644 --- a/doc/salome/gui/SMESH/input/constructing_meshes.doc +++ b/doc/salome/gui/SMESH/input/constructing_meshes.doc @@ -35,7 +35,7 @@ Hexahedral, Tetrahedral, Triangular and \b Quadrilateral (there can be less items for the geometry of lower dimensions). - Selection of a mesh type hides all meshing algorithms that can not + Selection of a mesh type hides all meshing algorithms that cannot generate elements of this type.
  • Apply \subpage basic_meshing_algos_page "meshing algorithms" and @@ -160,10 +160,10 @@ List of sets of hypotheses. Tag [custom] is automatically added to the sets defined by the user. - \note \a Automatic in the names of pre-defined sets of - hypotheses means only that initially \ref - automatic_length_anchor "Automatic Length" hypothesis was - included in these sets, and not that these sets are suitable for + \note \a "Automatic" in the names of predefined sets of + hypotheses came from previous versions of SALOME where + \ref automatic_length_anchor "Automatic Length" hypothesis + was included in these sets, and not that these sets are suitable for meshing any geometry.
  • diff --git a/doc/salome/gui/SMESH/input/constructing_submeshes.doc b/doc/salome/gui/SMESH/input/constructing_submeshes.doc index 782b5662e..d88161c44 100644 --- a/doc/salome/gui/SMESH/input/constructing_submeshes.doc +++ b/doc/salome/gui/SMESH/input/constructing_submeshes.doc @@ -8,7 +8,7 @@ hypotheses assigned to the parent mesh on the parent geometrical object, that allows getting a local mesh refinement. A sub-shape to create a sub-mesh on should be retrieved from the shape -of the parent mesh one of the following ways:
  • Click the \b Apply or Apply and Close button to confirm the operation.
  • diff --git a/src/SMDS/CMakeLists.txt b/src/SMDS/CMakeLists.txt index 2187eeea9..d770fe39d 100644 --- a/src/SMDS/CMakeLists.txt +++ b/src/SMDS/CMakeLists.txt @@ -41,7 +41,6 @@ SET(_link_LIBRARIES # header files / no moc processing SET(SMDS_HEADERS - chrono.hxx ObjectPool.hxx SMDS_TypeOfPosition.hxx SMDSAbs_ElementType.hxx diff --git a/src/SMDS/SMDS_UnstructuredGrid.cxx b/src/SMDS/SMDS_UnstructuredGrid.cxx index 6012a4f38..b1ff14967 100644 --- a/src/SMDS/SMDS_UnstructuredGrid.cxx +++ b/src/SMDS/SMDS_UnstructuredGrid.cxx @@ -24,6 +24,7 @@ #include "SMDS_MeshVolume.hxx" #include "utilities.h" +#include "chrono.hxx" #include #include diff --git a/src/SMDS/SMDS_UnstructuredGrid.hxx b/src/SMDS/SMDS_UnstructuredGrid.hxx index 5063adc21..67a8edc73 100644 --- a/src/SMDS/SMDS_UnstructuredGrid.hxx +++ b/src/SMDS/SMDS_UnstructuredGrid.hxx @@ -28,7 +28,6 @@ #include #include -#include "chrono.hxx" #include #include diff --git a/src/SMESH/SMESH_Gen.cxx b/src/SMESH/SMESH_Gen.cxx index 864f50c21..d009d077a 100644 --- a/src/SMESH/SMESH_Gen.cxx +++ b/src/SMESH/SMESH_Gen.cxx @@ -70,7 +70,6 @@ SMESH_Gen::SMESH_Gen() _segmentation = _nbSegments = 10; SMDS_Mesh::_meshList.clear(); MESSAGE(SMDS_Mesh::_meshList.size()); - //_counters = new counters(100); _compute_canceled = false; _sm_current = NULL; //vtkDebugLeaks::SetExitError(0); diff --git a/src/SMESH/SMESH_Gen.hxx b/src/SMESH/SMESH_Gen.hxx index 4dac76d43..064d76853 100644 --- a/src/SMESH/SMESH_Gen.hxx +++ b/src/SMESH/SMESH_Gen.hxx @@ -37,8 +37,6 @@ #include "SMESH_Algo.hxx" #include "SMESH_Mesh.hxx" -#include "chrono.hxx" - #include #include @@ -175,8 +173,6 @@ private: // default number of segments int _nbSegments; - counters *_counters; - volatile bool _compute_canceled; SMESH_subMesh* _sm_current; }; diff --git a/src/SMESH/SMESH_MeshEditor.cxx b/src/SMESH/SMESH_MeshEditor.cxx index d334c7d5c..7083261a9 100644 --- a/src/SMESH/SMESH_MeshEditor.cxx +++ b/src/SMESH/SMESH_MeshEditor.cxx @@ -50,6 +50,7 @@ #include #include "utilities.h" +#include "chrono.hxx" #include #include diff --git a/src/SMESHGUI/SMESHGUI.cxx b/src/SMESHGUI/SMESHGUI.cxx index 7908b4f49..11af75dd9 100644 --- a/src/SMESHGUI/SMESHGUI.cxx +++ b/src/SMESHGUI/SMESHGUI.cxx @@ -4829,7 +4829,7 @@ void SMESHGUI::contextMenuPopup( const QString& client, QMenu* menu, QString& ti _PTR(Study) study = appStudy->studyDS(); _PTR(SObject) obj = study->FindObjectID( io->getEntry() ); if ( obj ) { - QString aName = QString( QString::fromUtf8(obj->GetName().c_str()) ); + QString aName = QString( SMESH::fromUtf8(obj->GetName()) ); while ( aName.at( aName.length() - 1 ) == ' ' ) // Remove extraspaces in Name of Popup aName.remove( (aName.length() - 1), 1 ); title = aName; @@ -6809,7 +6809,7 @@ void SMESHGUI::message( const QString& msg ) _PTR(SObject) obj = study->FindObjectID( entry.toLatin1().constData() ); QString name; if ( obj ) - name = QString::fromUtf8(obj->GetName().c_str()); + name = SMESH::fromUtf8(obj->GetName()); if ( name.isEmpty() ) return; diff --git a/src/SMESHGUI/SMESHGUI_GroupDlg.cxx b/src/SMESHGUI/SMESHGUI_GroupDlg.cxx index 7cad33071..30d77de3b 100644 --- a/src/SMESHGUI/SMESHGUI_GroupDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_GroupDlg.cxx @@ -519,7 +519,7 @@ QString SMESHGUI_GroupDlg::GetDefaultName(const QString& theOperation) bool isUnique = false; while (!isUnique) { aName = theOperation + "_" + QString::number(++aNumber); - isUnique = (aSet.count(aName.toUtf8().data()) == 0); + isUnique = (aSet.count(std::string(SMESH::toUtf8(aName))) == 0); } return aName; @@ -535,7 +535,7 @@ void SMESHGUI_GroupDlg::setDefaultName() const do { aResName = aPrefix + QString::number( i++ ); - anObj = aStudy->FindObject( aResName.toUtf8().data() ); + anObj = aStudy->FindObject( SMESH::toUtf8(aResName) ); } while ( anObj ); myName->setText(aResName); @@ -594,14 +594,14 @@ void SMESHGUI_GroupDlg::init (SMESH::SMESH_GroupBase_ptr theGroup, myNameChanged = true; myName->blockSignals(true); - myName->setText(QString::fromUtf8(theGroup->GetName())); + myName->setText(SMESH::fromUtf8(theGroup->GetName())); myName->blockSignals(false); myName->home(false); SALOMEDS::Color aColor = theGroup->GetColor(); setGroupColor( aColor ); - myMeshGroupLine->setText(QString::fromUtf8(theGroup->GetName())); + myMeshGroupLine->setText(SMESH::fromUtf8(theGroup->GetName())); int aType = 0; switch(theGroup->GetType()) { @@ -686,7 +686,7 @@ void SMESHGUI_GroupDlg::init (SMESH::SMESH_GroupBase_ptr theGroup, { myNameChanged = true; myName->blockSignals(true); - myName->setText(QString::fromUtf8(theGroup->GetName())); + myName->setText(SMESH::fromUtf8(theGroup->GetName())); myName->blockSignals(false); } @@ -1041,7 +1041,7 @@ bool SMESHGUI_GroupDlg::onApply() if (myGeomObjects->length() == 1) { myGroupOnGeom = myMesh->CreateGroupFromGEOM(aType, - myName->text().toUtf8().data(), + SMESH::toUtf8(myName->text()), myGeomObjects[0]); } else { @@ -1083,11 +1083,11 @@ bool SMESHGUI_GroupDlg::onApply() aNewGeomGroupName += myName->text(); SALOMEDS::SObject_var aNewGroupSO = geomGen->AddInStudy(aSMESHGen->GetCurrentStudy(), aGroupVar, - aNewGeomGroupName.toUtf8().data(), aMeshShape); + SMESH::toUtf8(aNewGeomGroupName), aMeshShape); } myGroupOnGeom = myMesh->CreateGroupFromGEOM(aType, - myName->text().toUtf8().data(), + SMESH::toUtf8(myName->text()), aGroupVar); } resultGroup = SMESH::SMESH_GroupBase::_narrow( myGroupOnGeom ); @@ -1110,7 +1110,7 @@ bool SMESHGUI_GroupDlg::onApply() return false; myGroupOnFilter = myMesh->CreateGroupFromFilter(aType, - myName->text().toUtf8().data(), + SMESH::toUtf8(myName->text()), myFilter); resultGroup = SMESH::SMESH_GroupBase::_narrow( myGroupOnFilter ); @@ -1151,7 +1151,7 @@ bool SMESHGUI_GroupDlg::onApply() } else { - resultGroup->SetName(myName->text().toUtf8().data()); + resultGroup->SetName(SMESH::toUtf8(myName->text())); if ( aMeshGroupSO ) { @@ -1166,7 +1166,7 @@ bool SMESHGUI_GroupDlg::onApply() if ( !anActor ) return false; myActorsList.append( anActor ); } - anActor->setName(myName->text().toUtf8().data()); + anActor->setName(SMESH::toUtf8(myName->text())); QColor c; int delta; switch ( myTypeId ) { diff --git a/src/SMESHGUI/SMESHGUI_GroupUtils.cxx b/src/SMESHGUI/SMESHGUI_GroupUtils.cxx index ec8fa4ad8..4f4848357 100644 --- a/src/SMESHGUI/SMESHGUI_GroupUtils.cxx +++ b/src/SMESHGUI/SMESHGUI_GroupUtils.cxx @@ -42,7 +42,7 @@ namespace SMESH SMESH::SMESH_Group_var aGroup; try { if ( !theMesh->_is_nil() ) - aGroup = theMesh->CreateGroup( theType, theGroupName.toUtf8().data() ); + aGroup = theMesh->CreateGroup( theType, SMESH::toUtf8(theGroupName) ); } catch( const SALOME::SALOME_Exception& S_ex ) { SalomeApp_Tools::QtCatchCorbaException( S_ex ); diff --git a/src/SMESHGUI/SMESHGUI_Utils.cxx b/src/SMESHGUI/SMESHGUI_Utils.cxx index d539ac8a0..e3bf44671 100644 --- a/src/SMESHGUI/SMESHGUI_Utils.cxx +++ b/src/SMESHGUI/SMESHGUI_Utils.cxx @@ -52,6 +52,10 @@ #include CORBA_SERVER_HEADER(SMESH_Group) +//VSR: uncomment below macro to support unicode text properly in SALOME +// current commented out due to regressions +//#define PAL22528_UNICODE + namespace SMESH { SUIT_Desktop* @@ -391,4 +395,27 @@ namespace SMESH return n; } + QString fromUtf8( const char* txt ) + { +#ifdef PAL22528_UNICODE + return QString::fromUtf8( txt ); +#else + return QString( txt ); +#endif + } + + QString fromUtf8( const std::string& txt ) + { + return fromUtf8( txt.c_str() ); + } + + const char* toUtf8( const QString& txt ) + { +#ifdef PAL22528_UNICODE + return txt.toUtf8().constData(); +#else + return txt.toLatin1().constData(); +#endif + } + } // end of namespace SMESH diff --git a/src/SMESHGUI/SMESHGUI_Utils.h b/src/SMESHGUI/SMESHGUI_Utils.h index 5ac9ee97c..380be90be 100644 --- a/src/SMESHGUI/SMESHGUI_Utils.h +++ b/src/SMESHGUI/SMESHGUI_Utils.h @@ -208,6 +208,9 @@ SMESHGUI_EXPORT toStdStr( char* s ): toStrT< std::string >(s) {} }; + QString fromUtf8( const char* txt ); + QString fromUtf8( const std::string& txt ); + const char* toUtf8( const QString& txt ); } #endif // SMESHGUI_UTILS_H diff --git a/src/SMESHGUI/SMESH_msg_fr.ts b/src/SMESHGUI/SMESH_msg_fr.ts index 91596f776..da6ba66a9 100755 --- a/src/SMESHGUI/SMESH_msg_fr.ts +++ b/src/SMESHGUI/SMESH_msg_fr.ts @@ -398,7 +398,7 @@ MEN_CHOOSE - Choose... + Choisir... MEN_EDIT @@ -7761,7 +7761,7 @@ en raison de leurs types incompatibles: SMESHGUI_DisplayEntitiesDlg WRN_AT_LEAST_ONE - At least one entity type should be chosen! + Au moins une entité devrait être choisie! diff --git a/src/SMESHGUI/SMESH_msg_ja.ts b/src/SMESHGUI/SMESH_msg_ja.ts index 0332875cf..ae78bc09b 100644 --- a/src/SMESHGUI/SMESH_msg_ja.ts +++ b/src/SMESHGUI/SMESH_msg_ja.ts @@ -396,8 +396,8 @@ エッジ - MEN_CHOOSE - Choose... + MEN_CHOOSE + Choose... MEN_EDIT @@ -5432,7 +5432,7 @@ ID - ID + ID INSERT @@ -7588,6 +7588,14 @@ ORIENTATION 方向 + + VOLUMES + Volumes + + + OUTSIDE_VOLUME_NORMAL + Face normal outside volume + SMESHGUI_ReorientFacesOp @@ -7595,10 +7603,18 @@ NO_OBJECT_SELECTED 選択したオブジェクトがありません。 + + NO_VOLUME_OBJECT_SELECTED + No volume object selected + NO_FACES オブジェクトに顔が含まれていません。 + + NO_VOLUMES + Volume object includes no volumes + ZERO_SIZE_VECTOR サイズがゼロのベクター diff --git a/src/StdMeshersGUI/StdMeshers_msg_ja.ts b/src/StdMeshersGUI/StdMeshers_msg_ja.ts index 8a90c5e1f..5be2b77f5 100644 --- a/src/StdMeshersGUI/StdMeshers_msg_ja.ts +++ b/src/StdMeshersGUI/StdMeshers_msg_ja.ts @@ -27,6 +27,22 @@ TO_IGNORE_FACES レイヤ(入出口)を伴わない面 + + BAD_FACES_WARNING + +Specified faces are not sub-shapes of the shape of +mesh/sub-mesh. +Consider creating another hypothesis instead of using +this one for this mesh/sub-mesh. + + + BAD_EDGES_WARNING + +Specified edges are not sub-shapes of the shape of +mesh/sub-mesh. +Consider creating another hypothesis instead of using +this one for this mesh/sub-mesh. + @default