smesh/doc/salome/gui/SMESH/input/extrusion_along_path.doc

177 lines
7.0 KiB
Plaintext

/*!
\page extrusion_along_path_page Extrusion along Path
\n In principle, <b>Extrusion along Path</b> works in the same way
as \ref extrusion_page "Extrusion", the main difference is that we
define not a vector, but a path of extrusion which must be an 1D mesh
or 1D sub-mesh.
To get an idea of how this algorithm works, examine several examples,
starting from the most simple case of extrusion along a straight edge.
In the examples the sample mesh will be extruded along different
paths and with different parameters.
This 2D mesh has two quadrangle faces and seven edges. Look
at the picture, where white digits are the node numbers and green
are the element numbers:
\image html mesh_for_extr_along_path.png
<br><center><h2>Extrusion along a straight edge</h2>(not using base point
or angles)</center>
\image html straight_before.png
<center>The image shows a 1D path mesh, built on a linear edge, and the initial 2D mesh.</center>
\image html straight_after.png
<center> The image shows the result of extrusion of two edges
(#1 and #2) of the initial mesh along the path. \n Node #1 of path mesh
has been selected as Start node.</center>
<br><center><h2>Extrusion along a curvilinear edge</h2>(with and
without angles)</center>
\image html curvi_simple_before.png
<center>The image shows a 1D path mesh, built on curvilinear edge, and
the initial 2D mesh.</center>
\image html curvi_simple_after.png
<center>The central image shows the result of extrusion of one edge
(#2) of the initial mesh along the path. \n Node #1 of path mesh has
been selected as <b>Start node</b>.</center>
\image html curvi_angles_after.png
<center>The same, but using angles {45, 45, 45, 0, -45, -45, -45}</center>
<br><center><h2>Extrusion of a 2D face along a mesh built on a wire</h2></center>
In this example the path mesh has been built on a wire containing 3
edges. Node 1 is a start node. Linear angle variation by 180 degrees
has also been applied.
\image html extr_along_wire_before.png
<center><em>Meshed wire</em></center>
\image html extr_along_wire_after.png
<center><em>The resulting extrusion</em></center>
<br><center><h2>Extrusion of 2d elements along a closed path</h2></center>
\image html circle_simple_before.png
<center>The image shows a path mesh built on a closed edge
(circle).</center>
\image html circle_simple_after.png
<center>The central image shows the result of extrusion of both faces
of the initial mesh. \n Note, that no sewing has been done, so, there are
six coincident nodes and two coincident faces in the resulting
mesh.</center>
\image html circle_angles_after.png
<center>The same, but using angles {45, -45, 45, -45, 45, -45, 45, -45}
</center>
<br><em>To use Extrusion along Path:</em>
<ol>
<li>From the \b Modification menu choose the <b>Extrusion along a
path</b> item or click <em>"Extrusion along a path"</em> button in the toolbar.
\image html image101.png
<center><em>"Extrusion along a path" button</em></center>
The following dialog will appear:
\image html extrusion_along_path_dlg.png
</li>
<li>In this dialog:
<ul>
<li>Use \a Selection button to specify what you are going to
select at a given moment, \b Nodes, \b Edges or \b Faces.
\image html image120.png
<center><em>"Selection" button</em></center>
</li>
<li>Specify \b Nodes, \b Edges and \b Faces, which will be extruded, by one
of following means:
<ul>
<li><b>Select the whole mesh, sub-mesh or group</b> activating this
check-box.</li>
<li>Choose mesh elements with the mouse in the 3D Viewer. It is
possible to select a whole area with a mouse frame.</li>
<li>Input the element IDs directly in <b>Node IDs</b>, <b>Edge
IDs</b> and <b>Face IDs</b> fields. The selected elements will
be highlighted in the viewer, if the mesh is shown there.</li>
<li>Apply Filters. <b>Set filter</b> button allows to apply a
filter to the selection of elements. See more about filters in
the \ref filtering_elements "Selection filters" page.</li>
</ul>
</li>
<li>Define the \b Path along which the elements will be extruded.<br>
Path definition consists of several elements:
<ul>
<li><b>Mesh or sub-mesh</b> - 1D mesh or sub-mesh, along which
proceeds the extrusion.</li>
<li><b>Start node</b> - the start node of the Path. It is used
to define the direction of extrusion. </li>
</ul>
</li>
<li>If you activate <b>Generate Groups</b> check-box, the <em>result elements</em>
created from <em>selected elements</em> contained in groups will be
included into new groups named by pattern "<old group
name>_extruded" and "<old group name>_top". For example if a
selected quadrangle is included in \a g_Faces group (see figures
below) then result hexahedra will be included in \a
g_Faces_extruded group and a quadrangle created at the "top" of
extruded mesh will be included in \a g_Faces_top group. <br>
\image html extrusion_groups.png
\image html extrusion_groups_res.png
<p> This check-box is active only if there are some groups in the mesh.
</li>
</ul>
</li>
<li>There are two optional parameters, which can be very useful:
<ul>
<li>If the path of extrusion is curvilinear, at each iteration the
extruded elements are rotated to keep its initial angularity to the
curve. By default, the <b>Base Point</b> around which the elements
are rotated is the mass center of the elements (note that it can
differ from the gravity center computed by \a Geometry module for the
underlying shape), however, you can specify any point as the <b>Base
Point</b> and the elements will be rotated with respect to this
point.<br>
Note that only the displacement of the <b>Base Point</b> exactly
equals to the path, and all other extruded elements simply keep
their position relatively to the <b>Base Point</b> at each
iteration.</li>
<li>The elements can also be rotated around the path to get the
resulting mesh in a helical fashion. You can set the values of
angles at the right, add them to the list of angles at the left by
pressing the <em>"Add"</em> button and remove them from the list by
pressing the <em>"Remove"</em> button.
\image html add.png
<center><em>"Add" button</em></center>
\image html remove.png
<center><em>"Remove" button</em></center>
<b>Linear variation of the angles</b> option allows defining the angle
of gradual rotation for the whole path. At each step the elements will
be rotated by <code>( angle / nb. of steps )</code>.
</li>
</ul>
</li>
<li>Click \b Apply or <b> Apply and Close</b> button to confirm the
operation. Mesh edges will be extruded into faces, faces into
volumes. The external surface of the resulting 3d mesh (if faces
have been extruded) is covered with faces, and corners with
edges. If the path is closed, the resulting mesh can contain
duplicated nodes and faces, because no sewing is done.
</li>
</ol>
<br><b>See Also</b> a sample TUI Script of an
\ref tui_extrusion_along_path "Extrusion along a Path" operation.
*/