mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-11-12 00:29:17 +05:00
b13aae09cf
+ Optimize Belong to geom filter + Avoid SIGSEGV after re-computing a mesh if showing numbers was ON before
137 lines
5.6 KiB
Plaintext
137 lines
5.6 KiB
Plaintext
/*!
|
|
|
|
\page extrusion_page Extrusion
|
|
|
|
\n Extrusion is used to build mesh elements of plus one
|
|
dimension than the input ones. Boundary elements around elements of
|
|
plus one dimension are additionally created. All created elements
|
|
can be automatically grouped. Extrusion can be used to create a
|
|
\ref extrusion_struct "structured mesh from scratch".
|
|
|
|
\image html extrusion_box.png "If you extruded e.g. several quadrangles, you get exactly same mesh as if you meshed a geometrical box (except that the initial quadrangles can be incorrectly oriented)"
|
|
|
|
<p>Any node, segment or 2D element can be extruded. Each type of
|
|
elements is extruded into a corresponding type of result elements:
|
|
<table>
|
|
<tr><td><b>Extruded element</b></td><td><b> Result element </b></td></tr>
|
|
<tr><td>Node </td><td> Segment </td></tr>
|
|
<tr><td>Segment </td><td> Quadrilateral </td></tr>
|
|
<tr><td>Triangle </td><td> Pentahedron </td></tr>
|
|
<tr><td>Quadrilateral </td><td> Hexahedron </td></tr>
|
|
<tr><td>Polygon </td><td> Polyhedron </td></tr>
|
|
<tr><td>Hexagonal polygon </td><td> Hexagonal prism </td></tr>
|
|
</table>
|
|
|
|
<em>To use extrusion:</em>
|
|
<ol>
|
|
<li>From the \b Modification menu choose the \b Extrusion item or click
|
|
<em>"Extrusion"</em> button in the toolbar.
|
|
|
|
<center>
|
|
\image html image91.png
|
|
<em>"Extrusion" button</em>
|
|
</center>
|
|
|
|
The following dialog common for node, segments and faces will appear:
|
|
|
|
\image html extrusionalongaline1.png
|
|
|
|
\image html extrusionalongaline2.png
|
|
|
|
\image html extrusionalongaline3.png
|
|
|
|
</li>
|
|
|
|
<li>In this dialog:
|
|
<ul>
|
|
<li>Select the type of elements which will be extruded (nodes, 1D or
|
|
2D elements).</li>
|
|
<li>Specify the IDs of the elements which will be extruded by one
|
|
following means:
|
|
<ul>
|
|
<li><b>Select the whole mesh, sub-mesh or group</b> activating this
|
|
checkbox.</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>ID Elements</b>
|
|
field. The selected elements will be highlighted in the viewer.</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>If the <b>Extrusion to Distance</b> radio button is selected</li>
|
|
<ul>
|
|
<li>specify the translation vector by which the elements will be extruded.</li>
|
|
</ul>
|
|
<li>If the <b>Extrusion Along Vector</b> radio button is selected</li>
|
|
<ul>
|
|
<li>specify the coordinates of the \b Vector along which the elements
|
|
will be extruded, or select the face (the normal to the face will
|
|
define the vector),</li>
|
|
<li>specify the \b Distance of extrusion along the vector (it can
|
|
be negative).</li>
|
|
</ul>
|
|
<li>If the <b>Extrusion By Normal</b> radio button is selected,
|
|
which is visible in \b 2D mode only, every node of selected
|
|
elements is extruded along the \a average of the \a normal vectors to
|
|
the faces sharing the node.</li>
|
|
<ul>
|
|
<li>Specify the \b Distance of extrusion (it can be negative),</li>
|
|
<li>Use <b>Along average normal</b> check-box to specify along
|
|
what vector the distance is measured. If it is \a activated the
|
|
distance is measured along the average normal mentioned
|
|
above. If it is \a deactivated every node is extruded along the
|
|
average normal till its intersection with the virtual plane got
|
|
by translation of the face sharing the node along its own normal
|
|
by the distance. <br>
|
|
The picture below shows a cross-section of a 2D mesh extruded
|
|
with <b>Along average normal</b> activated (to the left) and
|
|
deactivated (to the right).
|
|
|
|
\image html extrusionbynormal_alongavgnorm.png
|
|
<p></li>
|
|
<li>Using <b>Use only input elements</b> check-box to specify what
|
|
elements to use to compute the average normal. If it is \a
|
|
activated only selected faces, among faces sharing the node,
|
|
are used to compute the average normal at the node. Else all
|
|
faces sharing the node are used. <br>
|
|
The picture below shows a cross-section of a 2D mesh the upper
|
|
plane of which is extruded with <b>Use only input elements</b>
|
|
activated (to the left) and deactivated (to the right).
|
|
|
|
\image html extrusionbynormal_useonly.png
|
|
<p></li>
|
|
</ul>
|
|
<li>Specify the <b>Number of steps</b>.</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>Click \b Apply or <b> Apply and Close</b> button to confirm the operation.</li>
|
|
</ol>
|
|
\anchor extrusion_struct
|
|
<h2>Example: creation of a structured mesh from scratch</h2>
|
|
|
|
\image html image75.jpg "A node is extruded into a line of segments"
|
|
<br>
|
|
\image html image76.jpg "The line of segments is extruded into a quadrangle mesh"
|
|
<br>
|
|
\image html image77.jpg "The quadrangle mesh is revolved into a hexahedral mesh"
|
|
|
|
|
|
<br><b>See Also</b> a sample TUI Script of an
|
|
\ref tui_extrusion "Extrusion" operation.
|
|
|
|
*/
|