Salome HOME
PR: doc on script migration
authorprascle <prascle>
Fri, 12 Apr 2013 16:27:32 +0000 (16:27 +0000)
committerprascle <prascle>
Fri, 12 Apr 2013 16:27:32 +0000 (16:27 +0000)
doc/salome/gui/SMESH/input/smesh_migration.doc [new file with mode: 0644]
doc/salome/gui/SMESH/input/smeshpy_interface.doc

diff --git a/doc/salome/gui/SMESH/input/smesh_migration.doc b/doc/salome/gui/SMESH/input/smesh_migration.doc
new file mode 100644 (file)
index 0000000..47b0f1c
--- /dev/null
@@ -0,0 +1,105 @@
+/*!
+
+\page smesh_migration_page Modifing Python scripts from SALOME 6 and before
+
+\n With SALOME 7.2, the Python interface for %Mesh has been slightly modified to offer new functionality:
+
+<ul>
+  <li>\subpage tui_execution_distribution_page</li>
+  <li>\subpage tui_auto_completion_documentation_page</li>
+</ul>
+
+\n Scripts generated for SALOME 6 and older versions must be adapted to work in SALOME 7.2 with all functionality.
+\n A compatibility mode allows old scripts to work in almost all cases, but with a warning.
+
+TODO: see geometry migration
+
+<b>Salome initialisation must always be done as shown below</b>
+\n (<em>salome_init()</em> can be invoked safely several times):
+\code
+import salome
+salome.salome_init()
+\endcode
+
+<b>smesh initialisation is modified.</b>
+\n old mode (from dump):
+\code
+import smesh, SMESH, SALOMEDS
+smesh.SetCurrentStudy(theStudy)
+\endcode
+new mode:
+\code
+import SMESH, SALOMEDS
+from salome.smesh import smeshBuilder
+smesh =  smeshBuilder.New(salome.myStudy)
+\endcode
+
+
+<b> Of course, <em>from smesh import *</em> is no more possible.</b>
+\n You have to explicitely write <em>smesh.some_method()</em>.
+
+<b>algorithms are no longer in the namespace <em>smesh</em> but in <em>smeshBuilder</em>.</b>
+\n For instance:
+\code
+MEFISTO_2D_1 = Mesh_1.Triangle(algo=smesh.MEFISTO,geom=Face_1)
+\endcode
+is replaced by:
+\code
+MEFISTO_2D_1 = Mesh_1.Triangle(algo=smeshBuilder.MEFISTO,geom=Face_1)
+\endcode
+\n StdMeshers algoritms concerned are <em>REGULAR, PYTHON, COMPOSITE, MEFISTO, Hexa, QUADRANGLE, RADIAL_QUAD</em>.
+\n SMESH Plugins provides algorithms such as: <em> NETGEN, NETGEN_FULL, FULL_NETGEN, NETGEN_1D2D3D, NETGEN_1D2D, NETGEN_2D, NETGEN_3D</em>.
+\n If you use DISTENE plugins, you also have <em>BLSURF, GHS3D, GHS3DPRL, Hexotic</em>.
+
+<b>Some variables where at the same time in namespaces <em>smesh</em> and <em>SMESH</em>.
+They are now only in namespace <em>SMESH</em>.</b>.
+\n The dump function was already using the namespace <em>SMESH</em>,
+so, if your script was built with the help of dump function, it should be already OK for that part.
+
+The more used variables concerned are:
+\n <em>NODE, EDGE, FACE, VOLUME, ALL.<em>
+\n <em>FT_xxx, geom_xxx, ADD_xxx...<em>
+
+\n For instance:
+\code
+srcFaceGroup = srcMesh.GroupOnGeom( midFace0, "src faces", smesh.FACE )
+mesh.MakeGroup("Tetras",smesh.VOLUME,smesh.FT_ElemGeomType,"=",smesh.Geom_TETRA)
+filter = smesh.GetFilter(smesh.FACE, smesh.FT_AspectRatio, smesh.FT_MoreThan, 6.5)
+\endcode
+is replaced by:
+\code
+srcFaceGroup = srcMesh.GroupOnGeom( midFace0, "src faces", SMESH.FACE )
+mesh.MakeGroup("Tetras",SMESH.VOLUME,SMESH.FT_ElemGeomType,"=",SMESH.Geom_TETRA)
+filter = smesh.GetFilter(SMESH.FACE, SMESH.FT_AspectRatio, SMESH.FT_MoreThan, 6.5)
+\endcode
+
+
+<b>The namespace <em>smesh.smesh</em> does not exist any more, use <em>smesh</em> instead.</b>
+\n For instance:
+\code
+Compound1 = smesh.smesh.Concatenate([Mesh_inf.GetMesh(), Mesh_sup.GetMesh()], 0, 1, 1e-05)
+\endcode
+is replaced by:
+\code
+Compound1 = smesh.Concatenate([Mesh_inf.GetMesh(), Mesh_sup.GetMesh()], 0, 1, 1e-05)
+\endcode
+
+<b>If you need to import explicitely an %SMESH Plugin, they are now in separate namespaces.</b>
+\n For instance:
+\code
+import StdMeshers
+import NETGENPlugin
+import BLSURFPlugin
+import GHS3DPlugin
+import HexoticPLUGIN
+\endcode
+is replaced by:
+\code
+from salome.StdMeshers import StdMeshersBuilder
+from salome.NETGENPlugin import NETGENPluginBuilder
+from salome.BLSURFPlugin import BLSURFPluginBuilder
+from salomeGHS3DPlugin .import GHS3DPluginBuilder
+from salome.HexoticPLUGIN import HexoticPLUGINBuilder
+\endcode
+
+*/
index 9e77d970c3a541c2b8125aa83f5421627f21ee8b..583eb1a8fb98b0dcd3e01d961464ec01795fff37 100644 (file)
@@ -11,6 +11,10 @@ classes are grouped by their functionality, like it is done in the GUI documenta
 - <a href="smeshpy_doc/namespaces.html">Linear documentation</a> grouped only by classes, declared
 in the \ref smeshBuilder and \ref StdMeshersBuilder Python packages.
 
+\n With SALOME 7.2, the Python interface for %Mesh has been slightly modified to offer new functionality,
+\n You may have to modify your scripts generated with SALOME 6 or older versions.
+\n Please see <li>\ref smesh_migration_page</li>
+
 Class \ref smeshBuilder.smeshBuilder "smeshBuilder" provides an interface to create and handle
 meshes. It can be used to create an empty mesh or to import mesh from the data file.