X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=doc%2Fsalome%2Fgui%2FSMESH%2Finput%2Fsmeshpy_interface.rst;h=8fa865382b03539e7204d2a4681807d9b6ebe7c9;hb=21b39b999745333dff21ad9b309270722f59a36d;hp=7a71f5cb6b01d2c1dcf1e7a61c5f4c1624cd3ec2;hpb=f0f67c0b47e58361bc50c7169734da604fbfca01;p=modules%2Fsmesh.git diff --git a/doc/salome/gui/SMESH/input/smeshpy_interface.rst b/doc/salome/gui/SMESH/input/smeshpy_interface.rst index 7a71f5cb6..8fa865382 100644 --- a/doc/salome/gui/SMESH/input/smeshpy_interface.rst +++ b/doc/salome/gui/SMESH/input/smeshpy_interface.rst @@ -7,16 +7,14 @@ Python interface Python API of SALOME Mesh module defines several classes that can be used for easy mesh creation and edition. -Documentation of SALOME %Mesh module Python API is available in two forms: +Documentation of SALOME Mesh module Python API is available in two forms: -- :ref:`Structured documentation `, where all methods and classes are grouped by their functionality. +- :doc:`Structured documentation `, where all methods and classes are grouped by their functionality. -- :ref:`Linear documentation ` grouped only by classes, declared in the :mod:`smeshBuilder` and :mod:`StdMeshersBuilder` Python packages. +- :ref:`Linear documentation ` grouped only by classes, declared in the :mod:`smeshBuilder` Python module. With SALOME 7.2, the Python interface for Mesh has been slightly modified to offer new functionality. - You may have to modify your scripts generated with SALOME 6 or older versions. - Please see :ref:`smesh_migration_page`. Class :class:`smeshBuilder.smeshBuilder` provides an interface to create and handle @@ -25,97 +23,89 @@ meshes. It can be used to create an empty mesh or to import mesh from the data f As soon as a mesh is created, it is possible to manage it via its own methods, described in class :class:`smeshBuilder.Mesh` documentation. -Class :class:`smeshstudytools.SMeshStudyTools` provides several methods to manipulate mesh objects in Salome study. +Class :class:`smeshstudytools.SMeshStudyTools` provides several methods to manipulate mesh objects in Salome study. A usual workflow to generate a mesh on geometry is following: #. Create an instance of :class:`smeshBuilder.smeshBuilder`: .. code-block:: python - :linenos: from salome.smesh import smeshBuilder - smesh = smeshBuilder.New( salome.myStudy ) + smesh = smeshBuilder.New() #. Create a :class:`smeshBuilder.Mesh` object: .. code-block:: python - :linenos: mesh = smesh.Mesh( geometry ) -#. Create and assign :ref:`basic_meshing_algos_page` by calling corresponding methods of the mesh. If a sub-shape is provided as an argument, a :ref:`constructing_submeshes_page` is implicitly created on this sub-shape: +#. Create and assign :ref:`algorithms ` by calling corresponding methods of the mesh. If a sub-shape is provided as an argument, a :ref:`sub-mesh ` is implicitly created on this sub-shape: .. code-block:: python - :linenos: - regular1D = smeshBuilder.Mesh.Segment() - mefisto = smeshBuilder.Mesh.Triangle( smeshBuilder.MEFISTO ) + regular1D = mesh.Segment() + mefisto = mesh.Triangle( smeshBuilder.MEFISTO ) # use other triangle algorithm on a face -- a sub-mesh appears in the mesh - netgen = smeshBuilder.Mesh.Triangle( smeshBuilder.NETGEN_1D2D, face ) + netgen = mesh.Triangle( smeshBuilder.NETGEN_1D2D, face ) -#. Create and assign :ref:`about_hypo_page` by calling corresponding methods of algorithms: +#. Create and assign :ref:`hypotheses ` by calling corresponding methods of algorithms: .. code-block:: python - :linenos: - segLen10 = StdMeshersBuilder.StdMeshersBuilder_Segment.LocalLength( 10. ) - maxArea = StdMeshersBuilder.StdMeshersBuilder_Segment.LocalLength( 100. ) + segLen10 = regular1D.LocalLength( 10. ) + maxArea = mefisto.LocalLength( 100. ) netgen.SetMaxSize( 20. ) netgen.SetFineness( smeshBuilder.VeryCoarse ) - -#. :ref:`compute_anchor` the mesh (generate mesh nodes and elements): + +#. :ref:`Compute the mesh ` (generate mesh nodes and elements): .. code-block:: python - :linenos: - Mesh.Compute() + mesh.Compute() An easiest way to start with Python scripting is to do something in -GUI and then to get a corresponding Python script via +GUI and then to get a corresponding Python script via **File > Dump Study** menu item. Don't forget that you can get all methods of any object in hand (e.g. a mesh group or a hypothesis) by calling *dir()* Python built-in function. -All methods of the Mesh Group can be found in :ref:`tui_create_standalone_group` sample script. +All methods of the :class:`Mesh Group ` can be found in :ref:`tui_create_standalone_group` sample script. -An example below demonstrates usage of the Python API for 3d mesh -generation and for retrieving information on mesh nodes and elements. +An example below demonstrates usage of the Python API for 3D mesh +generation and for retrieving basic information on mesh nodes, elements and groups. .. _example_3d_mesh: Example of 3d mesh generation: ############################## -.. _3dmesh.py: - -``3dmesh.py`` - - .. literalinclude:: ../../../examples/3dmesh.py - :linenos: :language: python -:download:`../../../examples/3dmesh.py` +:download:`Download this script <../../../examples/3dmesh.py>` Examples of Python scripts for Mesh operations are available by the following links: -- :ref:`tui_creating_meshes_page` -- :ref:`tui_defining_hypotheses_page` -- :ref:`tui_grouping_elements_page` -- :ref:`tui_filters_page` -- :ref:`tui_modifying_meshes_page` -- :ref:`tui_transforming_meshes_page` -- :ref:`tui_viewing_meshes_page` -- :ref:`tui_quality_controls_page` -- :ref:`tui_measurements_page` -- :ref:`tui_work_on_objects_from_gui` -- :ref:`tui_notebook_smesh_page` -- :ref:`tui_cartesian_algo` -- :ref:`tui_use_existing_faces` -- :ref:`tui_prism_3d_algo` -- :ref:`tui_generate_flat_elements_page` - - - .. toctree:: - :maxdepth: 2 + :titlesonly: + + tui_creating_meshes + tui_defining_hypotheses + tui_grouping_elements + tui_filters + tui_modifying_meshes + tui_transforming_meshes + tui_viewing_meshes + tui_quality_controls + tui_adaptation + tui_measurements + tui_work_on_objects_from_gui + tui_notebook_smesh - smesh_migration.rst +.. toctree:: + :hidden: + + smesh_migration.rst + smeshBuilder.rst + StdMeshersBuilder.rst + smeshstudytools.rst + modules.rst + smesh_module.rst