Salome HOME
bos #29171 Refactor testing procedure
[modules/smesh.git] / doc / gui / input / tui_modifying_meshes.rst
diff --git a/doc/gui/input/tui_modifying_meshes.rst b/doc/gui/input/tui_modifying_meshes.rst
new file mode 100644 (file)
index 0000000..c8297ee
--- /dev/null
@@ -0,0 +1,338 @@
+.. _tui_modifying_meshes_page: 
+
+****************
+Modifying Meshes
+****************
+
+.. contents:: `Table of contents`
+
+
+.. _tui_adding_nodes_and_elements: 
+
+Adding Nodes and Elements
+=========================
+
+.. _tui_add_node:
+
+Add Node
+********
+
+.. literalinclude:: ../../examples/modifying_meshes_ex01.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex01.py>`
+
+.. _tui_add_0DElement:
+
+Add 0D Element
+**************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex02.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex02.py>`
+
+.. _tui_add_0DElement_on_all_nodes:
+
+Add 0D Element on Element Nodes
+*******************************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex03.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex03.py>`
+
+.. _tui_add_edge:
+
+Add Edge
+********
+
+.. literalinclude:: ../../examples/modifying_meshes_ex04.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex04.py>`
+
+.. _tui_add_triangle:
+
+Add Triangle
+************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex05.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex05.py>`
+
+.. _tui_add_quadrangle:
+
+Add Quadrangle
+**************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex06.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex06.py>`
+
+.. _tui_add_tetrahedron:
+
+Add Tetrahedron
+***************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex07.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex07.py>`
+
+.. _tui_add_hexahedron:
+
+Add Hexahedron
+**************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex08.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex08.py>`
+
+.. _tui_add_polygon:
+
+Add Polygon
+***********
+
+.. literalinclude:: ../../examples/modifying_meshes_ex09.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex09.py>`
+
+.. _tui_add_polyhedron:
+
+Add Polyhedron
+**************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex10.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex10.py>`
+
+.. _tui_removing_nodes_and_elements: 
+
+Removing Nodes and Elements
+===========================
+
+.. _tui_removing_nodes:
+
+Removing Nodes
+**************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex11.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex11.py>`
+
+.. _tui_removing_elements:
+
+Removing Elements
+*****************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex12.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex12.py>`
+
+.. _tui_removing_orphan_nodes:
+
+Removing Orphan Nodes
+*********************
+
+.. literalinclude:: ../../examples/modifying_meshes_ex13.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex13.py>`
+
+.. _tui_moving_nodes: 
+
+Moving Nodes
+============
+
+.. literalinclude:: ../../examples/modifying_meshes_ex15.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex15.py>`
+
+.. _tui_diagonal_inversion: 
+
+Diagonal Inversion
+==================
+
+.. literalinclude:: ../../examples/modifying_meshes_ex16.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex16.py>`
+
+.. _tui_uniting_two_triangles:
+
+Uniting two Triangles
+=====================
+
+.. literalinclude:: ../../examples/modifying_meshes_ex17.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex17.py>`
+
+.. _tui_uniting_set_of_triangles:
+
+Uniting a Set of Triangles
+==========================
+
+.. literalinclude:: ../../examples/modifying_meshes_ex18.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex18.py>`
+
+.. _tui_orientation: 
+
+Orientation
+===========
+
+.. literalinclude:: ../../examples/modifying_meshes_ex19.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex19.py>`
+
+.. _tui_cutting_quadrangles: 
+
+Cutting Quadrangles
+===================
+
+.. literalinclude:: ../../examples/modifying_meshes_ex20.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex20.py>`
+
+.. _tui_cutting_triangles: 
+
+Cutting Triangles
+=================
+
+.. literalinclude:: ../../examples/modifying_meshes_cut_triangles.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_cut_triangles.py>`
+
+.. _modifying_meshes_split_vol: 
+
+Split Volumes into Tetrahedra
+=============================
+
+.. literalinclude:: ../../examples/modifying_meshes_split_vol.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_split_vol.py>`
+
+.. _tui_smoothing: 
+
+Smoothing
+=========
+
+.. literalinclude:: ../../examples/modifying_meshes_ex21.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex21.py>`
+
+.. _tui_extrusion: 
+
+Extrusion
+=========
+
+.. literalinclude:: ../../examples/modifying_meshes_ex22.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex22.py>`
+
+.. _tui_extrusion_along_path: 
+
+Extrusion along a Path
+======================
+
+.. literalinclude:: ../../examples/modifying_meshes_ex23.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex23.py>`
+
+.. _tui_revolution: 
+
+Revolution
+==========
+
+.. literalinclude:: ../../examples/modifying_meshes_ex24.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex24.py>`
+
+.. _tui_pattern_mapping: 
+
+Pattern Mapping
+===============
+
+.. literalinclude:: ../../examples/modifying_meshes_ex25.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex25.py>`
+
+.. _tui_quadratic: 
+
+Convert mesh to/from quadratic
+==============================
+
+.. literalinclude:: ../../examples/modifying_meshes_ex26.py
+    :language: python
+
+:download:`Download this script <../../examples/modifying_meshes_ex26.py>`
+
+.. _tui_split_biquad: 
+
+Split bi-quadratic into linear
+==============================
+
+.. literalinclude:: ../../examples/split_biquad.py
+    :language: python
+
+:download:`Download this script <../../examples/split_biquad.py>`
+
+.. _tui_double_nodes_on_group_boundaries:
+
+Double nodes on groups boundaries
+=================================
+
+Double nodes on shared faces between groups of volumes and create flat elements on demand.
+
+The list of groups must contain at least two groups. The groups have to be disjoint: no common element into two different groups.
+
+The nodes of the internal faces at the boundaries of the groups are doubled. Optionally, the internal faces are replaced by flat elements.
+
+Triangles are transformed into prisms, and quadrangles into hexahedrons.
+
+The flat elements are stored in groups of volumes.
+
+These groups are named according to the position of the group in the list:
+the group j_n_p is the group of the flat elements that are built between the group \#n and the group \#p in the list.
+If there is no shared faces between the group \#n and the group \#p in the list, the group j_n_p is not created.
+All the flat elements are gathered into the group named "joints3D" (or "joints2D" in 2D situation).
+The flat element of the multiple junctions between the simple junction are stored in a group named "jointsMultiples".
+
+This example represents an iron cable (a thin cylinder) in a concrete block (a big cylinder).
+The big cylinder is defined by two geometric volumes.
+
+.. literalinclude:: ../../examples/generate_flat_elements.py
+    :language: python
+
+:download:`Download this script <../../examples/generate_flat_elements.py>`
+
+Here, the 4 groups of volumes [Solid_1_1, Solid_2_1, Solid_3_1, Solid_4_1] constitute a partition of the mesh.
+The flat elements on group boundaries and on faces are built with the
+2 last lines of the code above.
+
+If the last argument (Boolean) in DoubleNodesOnGroupBoundaries is set to 1,
+the flat elements are built, otherwise, there is only a duplication of the nodes.
+
+To observe flat element groups, save the resulting mesh on a MED file and reload it.
+
+