Merge remote-tracking branch 'origin/master' into gni/adaptation

This commit is contained in:
Gérald NICOLAS 2020-10-08 09:42:10 +02:00
commit 7faac48fff
12 changed files with 169 additions and 50 deletions

View File

@ -4,14 +4,14 @@
Plugins
*******
The following plugins are accessible via **Mesh > SMESH pligins** menu:
The following plugins are accessible via **Mesh > SMESH plugins** menu:
* `SpherePadder plugin <padder/padder_userguide_page.html>`_
* `SpherePadder plugin <padder/padder_userguide_page.html>`_
* `MGSurfOpt plugin <yams/index.html>`_
* `MGCleaner plugin <MGCleaner/index.html>`_
* `Z-cracks plugin <zcracks/index.html>`_
* `MacMesh plugin <MacMesh/index.html>`_
* `blocFissure plugin <blocFissure/index.html>`_
* `blocFissure plugin <blocFissure/index.html>`_
* **MeshCut plugin** - allows to cut a mesh constituted of linear tetrahedrons by a plane.
* **Get min or max value of control** - a sample plugin whose sources are located in *${GUI_ROOT_DIR}/share/salome/plugins/gui/demo* directory (files *minmax_plugin.py, minmax_ui.py and smesh_plugins.py*). You can find a detailed description of how to create your own plugin in documentation: **Help > User's Guide > GUI module > How-To's and Best Practices > Extend SALOME gui functions using python plugins**.

View File

@ -112,12 +112,16 @@
<section name="smesh_help" >
<parameter name="User's Guide/Mesh module/User's Guide" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/index.html"/>
<parameter name="Developer's Guide/Mesh module/Developer's Guide" value="%SMESH_ROOT_DIR%/share/doc/salome/tui/SMESH/index.html;;http://docs.salome-platform.org/latest/tui/SMESH/index.html"/>
<parameter name="User's Guide/Mesh module/Plug-ins/MGSurfOpt plugin" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/yams/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/yams/index.html"/>
<parameter name="User's Guide/Mesh module/Plug-ins/MGCleaner plugin" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/MGCleaner/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/MGCleaner/index.html"/>
<parameter name="User's Guide/Mesh module/Plug-ins/Z-cracks plugin" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/zcracks/index.html"/>
<parameter name="User's Guide/Mesh module/Plug-ins/MacMesh plugin" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/MacMesh/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/MacMesh/index.html"/>
<parameter name="User's Guide/Mesh module/Plug-ins/blocFissure plugin" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/blocFissure/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/blocFissure/index.html"/>
<parameter name="User's Guide/Mesh module/Plug-ins/SpherePadder plugin" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/padder/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/padder/index.html"/>
<parameter name="User's Guide/Mesh module/MGCleaner plugin/User's Guide" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/MGCleaner/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/MGCleaner/index.html"/>
<parameter name="User's Guide/Mesh module/MGCleaner plugin/Reference" value="%MESHGEMS_ROOT_DIR%/Docs/mg-cleaner_api_manual.pdf"/>
<parameter name="User's Guide/Mesh module/MGCleaner plugin/Manual" value="%MESHGEMS_ROOT_DIR%/Docs/mg-cleaner_user_manual.pdf"/>
<parameter name="User's Guide/Mesh module/MGSurfOpt plugin/User's Guide" value="%SMESH_ROOT_DIR%/share/doc/salome/gui/SMESH/yams/index.html;;http://docs.salome-platform.org/latest/gui/SMESH/yams/index.html"/>
<parameter name="User's Guide/Mesh module/MGSurfOpt plugin/Reference" value="%MESHGEMS_ROOT_DIR%/Docs/mg-surfopt_api_manual.pdf"/>
<parameter name="User's Guide/Mesh module/MGSurfOpt plugin/Manual" value="%MESHGEMS_ROOT_DIR%/Docs/mg-surfopt_user_manual.pdf"/>
</section>
<section name="resources">
<!-- Module resources -->

View File

@ -250,12 +250,16 @@ void SMESHGUI_DeleteGroupDlg::onOk()
//=================================================================================
void SMESHGUI_DeleteGroupDlg::reject()
{
if (SMESH::GetCurrentVtkView()) {
SMESH::RemoveFilters(); // PAL6938 -- clean all mesh entity filters
}
if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI ))
aViewWindow->SetSelectionMode(ActorSelection);
disconnect(mySelectionMgr, 0, this, 0);
disconnect(mySMESHGUI, 0, this, 0);
mySMESHGUI->ResetState();
//disconnect(mySMESHGUI, 0, this, 0);
//mySMESHGUI->ResetState();
mySelectionMgr->clearFilters();
mySMESHGUI->ResetState();
QDialog::reject();
}

View File

@ -308,6 +308,14 @@
<source>MEN_COMPUTE</source>
<translation>Calculer</translation>
</message>
<message>
<source>MEN_RE_COMPUTE</source>
<translation>Nettoyer et calculer</translation>
</message>
<message>
<source>MEN_SHOW_ERRORS</source>
<translation>Montrer les erreurs de calcul</translation>
</message>
<message>
<source>MEN_COMPUTE_SUBMESH</source>
<translation>Calculer le sous-maillage</translation>
@ -1502,6 +1510,10 @@ Merci de les corriger, puis essayez de nouveau</translation>
<source>SMESH_AUTO_DIM</source>
<translation>Définition automatique des dimensions spatiales</translation>
</message>
<message>
<source>SMESH_ZTOLERANCE</source>
<translation>Tolérance en Z</translation>
</message>
<message>
<source>SMESH_REQUIRED_GROUPS</source>
<translation>Créer les groupes des types nécessaires</translation>
@ -2306,6 +2318,10 @@ Référez-vous à la documentation sur l&apos;algorithme et la géométrie suppo
<source>SMESH_NAME</source>
<translation>Nom</translation>
</message>
<message>
<source>SMESH_NAMES</source>
<translation>Noms</translation>
</message>
<message>
<source>SMESH_NODES</source>
<translation>Nœuds</translation>
@ -4665,6 +4681,11 @@ Il ne peut pas être supprimé.</translation>
Continuer?
</translation>
</message>
<message>
<source>MSG_WARN_ON_GEOM_MODIF</source>
<translation>Cette action est interdite car la géométrie
a changé et le maillage doit etre recalculé..</translation>
</message>
<message>
<source>SMESH_ADVANCED</source>
<translation>Avancé</translation>
@ -4725,6 +4746,29 @@ Il ne peut pas être supprimé.</translation>
<translation>Exporter les champs</translation>
</message>
</context>
<context>
<name>SMESHGUI_FaceGroupsSeparatedByEdgesDlg</name>
<message>
<source>CAPTION</source>
<translation>Groupes de faces séparées par une arête vive.</translation>
</message>
<message>
<source>SHARP_ANGLE</source>
<translation>Angle vif</translation>
</message>
<message>
<source>CREATE_EDGES</source>
<translation>Créer les arêtes</translation>
</message>
<message>
<source>USE_EXISTING_EDGES</source>
<translation>Utiliser les arêtes existantes</translation>
</message>
<message>
<source>NB_GROUPS_CREATED</source>
<translation>%1 groupes de faces créé(s)</translation>
</message>
</context>
<context>
<name>SMESHGUI_OffsetDlg</name>
<message>
@ -5267,7 +5311,15 @@ Ouvrez une fenêtre VTK et essayez de nouveau</translation>
</message>
<message>
<source>MESHES</source>
<translation>Maillages</translation>
<translation>Maillages, sous-maillages, groupes</translation>
</message>
<message>
<source>NEW_MESH_NAME</source>
<translation>Nom du nouveau maillage</translation>
</message>
<message>
<source>MESH_APPEND_TO</source>
<translation>Ajouter au maillage</translation>
</message>
<message>
<source>PROCESSING_IDENTICAL_GROUPS</source>
@ -5635,6 +5687,10 @@ Choisissez un groupe et essayez de nouveau</translation>
<source>KEEP_NODES</source>
<translation>Les nœuds à conserver pendant la fusion</translation>
</message>
<message>
<source>KEEP_ELEMENTS</source>
<translation>Elements à conserver pendant la fusion</translation>
</message>
<message>
<source>GROUP_SUBMESH</source>
<translation>Groupes et sous-maillages</translation>
@ -5654,18 +5710,6 @@ Choisissez un groupe et essayez de nouveau</translation>
<source>CANT_GET_TANGENT</source>
<translation>Impossible d&apos;obtenir la tangente pour un des nœuds du chemin</translation>
</message>
<message>
<source>EXTRUSION_0D</source>
<translation>Extrusion des éléments 0D</translation>
</message>
<message>
<source>EXTRUSION_1D</source>
<translation>Extrusion des éléments 1D</translation>
</message>
<message>
<source>EXTRUSION_2D</source>
<translation>Extrusion des éléments 2D</translation>
</message>
<message>
<source>EXTRUSION_ALONG_PATH</source>
<translation>Extrusion suivant un chemin</translation>
@ -5694,6 +5738,14 @@ Choisissez un groupe et essayez de nouveau</translation>
<source>SMESH_BASE_POINT</source>
<translation>Point de base</translation>
</message>
<message>
<source>SMESH_SCALES</source>
<translation>Facteurs d'échelle</translation>
</message>
<message>
<source>LINEAR_SCALES</source>
<translation>Variation linéaires des facteurs d'échelle</translation>
</message>
<message>
<source>SMESH_PATH</source>
<translation>Chemin</translation>
@ -5725,18 +5777,6 @@ Choisissez un groupe et essayez de nouveau</translation>
</context>
<context>
<name>SMESHGUI_ExtrusionDlg</name>
<message>
<source>EXTRUSION_0D</source>
<translation>Extrusion de nœuds</translation>
</message>
<message>
<source>EXTRUSION_1D</source>
<translation>Extrusion des éléments 1D</translation>
</message>
<message>
<source>EXTRUSION_2D</source>
<translation>Extrusion des éléments 2D</translation>
</message>
<message>
<source>EXTRUSION_ALONG_LINE</source>
<translation>Extrusion suivant une ligne</translation>
@ -5761,6 +5801,14 @@ Choisissez un groupe et essayez de nouveau</translation>
<source>BASE_POINT</source>
<translation>Point de base</translation>
</message>
<message>
<source>LINEAR_ANGLES</source>
<translation>Variation linéaire des angles</translation>
</message>
<message>
<source>SMESH_ANGLES</source>
<translation>Angles de rotation</translation>
</message>
</context>
<context>
<name>SMESHGUI_FilterDlg</name>
@ -6142,6 +6190,10 @@ Entrez une valeur correcte et essayez de nouveau</translation>
<source>LENGTH2D</source>
<translation>Longueur 2D</translation>
</message>
<message>
<source>LENGTH3D</source>
<translation>Longueur 3D</translation>
</message>
<message>
<source>DEFLECTION2D</source>
<translation>Deflection 2D</translation>
@ -7826,6 +7878,10 @@ en raison de leurs types incompatibles:
<source>COORDINATES</source>
<translation>Coordonnées</translation>
</message>
<message>
<source>NB_NODES</source>
<translation>Nombre de nœuds</translation>
</message>
<message>
<source>CONNECTIVITY</source>
<translation>Connectivité</translation>
@ -8132,6 +8188,10 @@ en raison de leurs types incompatibles:
<source>FILE_VERSION</source>
<translation>Format du fichier</translation>
</message>
<message>
<source>VERSION_UNKNOWN</source>
<translation>Inconnu</translation>
</message>
<message>
<source>STANDALONE_MESH</source>
<translation>Autonome</translation>
@ -8329,6 +8389,21 @@ en raison de leurs types incompatibles:
<translation>Calculer</translation>
</message>
</context>
<context>
<name>SMESHGUI_Angle</name>
<message>
<source>NODES_GROUP</source>
<translation>Trois nœuds</translation>
</message>
<message>
<source>RESULT</source>
<translation>Angle en degrés</translation>
</message>
<message>
<source>COMPUTE</source>
<translation>Calculer</translation>
</message>
</context>
<context>
<name>SMESHGUI_CopyMeshDlg</name>
<message>
@ -8385,6 +8460,10 @@ with red in the Object Browser.</translation>
<source>BASIC_PROPERTIES</source>
<translation>Propriétés basiques</translation>
</message>
<message>
<source>ANGLE</source>
<translation>Angle</translation>
</message>
</context>
<context>
<name>SMESHGUI_BoundingBox</name>
@ -8521,7 +8600,7 @@ with red in the Object Browser.</translation>
</message>
<message>
<source>NODES</source>
<translation>Noeuds</translation>
<translation>Nœuds</translation>
</message>
<message>
<source>EDGES</source>

View File

@ -1212,6 +1212,9 @@ void SMESH_Mesh_i::RemoveGroupWithContents( SMESH::SMESH_GroupBase_ptr theGroup
if ( n->NbInverseElements() == 0 )
_impl->GetMeshDS()->RemoveFreeNode( n, /*sm=*/0 );
_impl->GetMeshDS()->Modified();
_impl->SetIsModified( true );
// Update Python script (theGroup must be alive for this)
pyDump << SMESH::SMESH_Mesh_var(_this())
<< ".RemoveGroupWithContents( " << theGroup << " )";

View File

@ -440,6 +440,18 @@ class Mesh_Algorithm:
for i in reverseList:
if isinstance( i, int ):
s = geompy.GetSubShape(self.mesh.geom, [i])
#bos #20082 begin:
if s is None and type(self.geom) != geomBuilder.GEOM._objref_GEOM_Object:
# try to get the SHAPERSTUDY engine directly, as GetGen does not work because of
# simplification of access in geomBuilder: omniORB.registerObjref
from SHAPERSTUDY_utils import getEngine
gen = getEngine()
if gen:
aShapeOp = gen.GetIShapesOperations()
s = aShapeOp.GetSubShape(self.mesh.geom, i)
#bos #20082 end
if s.GetShapeType() != geomBuilder.GEOM.EDGE:
raise TypeError("Not EDGE index given")
resList.append( i )

View File

@ -53,6 +53,14 @@ Les arêtes sélectionnées ne sont pas des sous-géométries de la pièce à ma
<source>EXTMETH_FACE_OFFSET</source>
<translation>Décalage de la face</translation>
</message>
<message>
<source>CREATE_GROUPS_FROM_LAYERS</source>
<translation>Créer des groupes à partir des couches</translation>
</message>
<message>
<source>GROUP_NAME</source>
<translation>Nom du groupe</translation>
</message>
</context>
<context>
<name>@default</name>
@ -536,6 +544,10 @@ Les arêtes sélectionnées ne sont pas des sous-géométries de la pièce à ma
<source>ENF_NODES</source>
<translation>Nœuds imposés</translation>
</message>
<message>
<source>CORNERS</source>
<translation>Sommets de coin</translation>
</message>
</context>
<context>
<name>StdMeshersGUI_LayerDistributionParamWdg</name>
@ -562,6 +574,18 @@ Les arêtes sélectionnées ne sont pas des sous-géométries de la pièce à ma
<source>ADD_EDGES</source>
<translation>Ajouter des arêtes</translation>
</message>
<message>
<source>CREATE_FACES</source>
<translation>Créer des faces</translation>
</message>
<message>
<source>CONSIDER_INTERNAL_FACES</source>
<translation>Considérer les faces partagées et internes</translation>
</message>
<message>
<source>USE_THRESHOLD_FOR_INTERNAL_FACES</source>
<translation>Appliquer le seuil aux faces partagées/internes</translation>
</message>
<message>
<source>AXIS_X</source>
<translation>Axe X</translation>

View File

@ -6,25 +6,22 @@ MeshGems-Cleaner plugin documentation
=====================================
This documentation covers the usage of MeshGems-Cleaner, also named MG-Cleaner or MGCleaner as plug-in in Salome that can be used within the Salome
Mesh module for remeshing 2D Surface.
Mesh module for remeshing 2D Surface.
MG-Cleaner plug-in uses Distene commercial software MeshGems-Cleaner, which is an **automatic surface remeshing tool**.
This plug_in offers only the most common functionalities of the tool.
.. note::
for a complete documentation, see :download:`MG-cleaner user manual <files/mg-cleaner_user_manual.pdf>`.
Contents:
.. toctree::
:maxdepth: 2
lct.rst
Mandatory_params.rst
Advanced_params.rst
Generics_params.rst
editHypo.rst

View File

@ -2,8 +2,7 @@ Advanced Remeshing Options
==========================
.. note::
Be aware that no control of coherency is done when you set these parameters : for instance, geometrical approximation is only allowed when SurfOpt computes a mesh for finite elements but the GUI will let you choose geometrical approximation and compute a visualisation mesh. See Distene's documentation for more details :
:download:`MeshGems-SurfOpt: The automatic surface remeshing tool of the MeshGems Suite <files/mg-surfopt_user_manual.pdf>`.
Be aware that no control of coherency is done when you set these parameters : for instance, geometrical approximation is only allowed when SurfOpt computes a mesh for finite elements but the GUI will let you choose geometrical approximation and compute a visualisation mesh. See Distene's documentation for more details.
- **Ridge detection**
@ -30,7 +29,7 @@ This parameter P enables the user to specify the maximal chordal deviation E re
- **Maximal/Minimal size around vertices**
These two parameters allow the user to prescribe a Maximal/Minimal size for the mesh elements, ie the lengths of the edges.
These two parameters allow the user to prescribe a Maximal/Minimal size for the mesh elements, ie the lengths of the edges.
- **Mesh gradation**

View File

@ -6,25 +6,22 @@ MeshGems-SurfOpt plugin documentation
=====================================
This documentation covers the usage of MeshGems-SurfOpt as plug-in in Salome that can be used within the Salome
Mesh module for remeshing 2D Surface.
Mesh module for remeshing 2D Surface.
MeshGems-SurfOpt plug-in uses Distene commercial software MeshGems-SurfOpt, which is an **automatic surface remeshing tool**.
This plug-in offers only the most common functionalities of the tool.
.. note::
for a complete documentation, see :download:`MeshGems-SurfOpt: The automatic surface remeshing tool of the MeshGems Suite <files/mg-surfopt_user_manual.pdf>`.
Contents:
.. toctree::
:maxdepth: 2
lct.rst
Mandatory_params.rst
Advanced_params.rst
Generics_params.rst
editHypo.rst