2008-03-07 12:47:05 +05:00
/*!
\page extrusion_page Extrusion
\n Extrusion is used to build mesh elements of plus one
2015-03-17 17:06:56 +05:00
dimension than the input ones. Boundary elements around generated
mesh 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".
2015-01-23 20:49:49 +05:00
2015-05-25 14:40:41 +05:00
\image html extrusion_box.png "If you extrude several quadrangles, you get exactly the same mesh as if you meshed a geometrical box (except for that the initial quadrangles can be incorrectly oriented): quadrangles and segments are created on the boundary of the generated mesh"
2015-01-23 20:49:49 +05:00
2014-12-08 22:18:59 +05:00
<p>Any node, segment or 2D element can be extruded. Each type of
elements is extruded into a corresponding type of result elements:
2012-12-13 17:41:29 +06:00
<table>
2014-11-26 17:16:24 +05:00
<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>
2012-12-13 17:41:29 +06:00
<tr><td>Hexagonal polygon </td><td> Hexagonal prism </td></tr>
</table>
2008-03-07 12:47:05 +05:00
2015-08-03 18:08:55 +05:00
When 2D elements are extruded, in addition to 3D elements segments are
2015-10-19 13:10:14 +05:00
created on the ribs of the resulting 3D mesh. Free edges of input 2D elements
2015-08-03 18:08:55 +05:00
generate logically horizontal rib segments. Logically vertical rib
2015-10-19 13:10:14 +05:00
segments are generated from the nodes belonging to a sole input 2D element
(the figure below illustrates this rule).
2015-08-03 18:08:55 +05:00
\image html extru_rib_segs.png "Two triangles extruded: no vertical rib segments generated from nodes #2 and #3 as they are shared by both triangles"
2008-03-07 12:47:05 +05:00
<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.
2012-12-13 17:41:29 +06:00
<center>
2009-02-17 10:27:49 +05:00
\image html image91.png
2012-12-13 17:41:29 +06:00
<em>"Extrusion" button</em>
</center>
2008-03-07 12:47:05 +05:00
2015-05-25 14:40:41 +05:00
The following dialog will appear:
2008-03-07 12:47:05 +05:00
\image html extrusionalongaline1.png
</li>
2012-08-09 16:03:55 +06:00
<li>In this dialog:
2008-03-07 12:47:05 +05:00
<ul>
2015-08-28 22:03:25 +05:00
<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>
2015-03-17 17:06:56 +05:00
<li>Specify \b Nodes, \b Edges and \b Faces, which will be extruded, by one
of following means:
2012-12-13 17:41:29 +06:00
<ul>
2015-05-25 14:40:41 +05:00
<li><b>Select the whole mesh, sub-mesh or group</b> activating the
corresponding check-box.</li>
2012-12-13 17:41:29 +06:00
<li>Choose mesh elements with the mouse in the 3D Viewer. It is
possible to select a whole area with a mouse frame.</li>
2015-03-17 17:06:56 +05:00
<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>
2012-12-13 17:41:29 +06:00
<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>
2016-01-22 22:10:27 +05:00
2015-03-17 17:06:56 +05:00
<li>If the <b>Extrusion to Distance</b> radio button is selected
2016-01-22 22:10:27 +05:00
<ul>
<li> specify the translation vector by which the elements will
be extruded.</li>
</ul>
2015-03-17 17:06:56 +05:00
</li>
2015-05-25 14:40:41 +05:00
<li>If the <b>Extrusion Along Vector</b> radio button is selected
2016-01-22 22:10:27 +05:00
\image html extrusionalongaline2.png
2015-03-17 17:06:56 +05:00
<ul>
2016-01-22 22:10:27 +05:00
<li>specify the components of the \b Vector along which the elements
2015-03-17 17:06:56 +05:00
will be extruded, either directly or by selecting the mesh 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>
2015-05-25 14:40:41 +05:00
2015-01-23 20:49:49 +05:00
<li>If the <b>Extrusion By Normal</b> radio button is selected,
2015-05-25 14:40:41 +05:00
every node of the selected faces is extruded along the \a average
2015-03-17 17:06:56 +05:00
of the \a normal vectors to the faces sharing the node. (Nodes and
2015-05-25 14:40:41 +05:00
edges cannot be extruded in this mode.)
2016-01-22 22:10:27 +05:00
\image html extrusionalongaline3.png
2015-03-17 17:06:56 +05:00
<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
2015-05-25 14:40:41 +05:00
which vector the distance is measured.
2015-03-17 17:06:56 +05:00
<ul>
<li>If it is \a activated the distance is measured along the
average normal mentioned above. </li>
<li>If it is \a deactivated every node is extruded along the
2015-05-25 14:40:41 +05:00
average normal till its intersection with a virtual plane obtained
2015-03-17 17:06:56 +05:00
by translation of the face sharing the node along its own normal
by the \b Distance.</li>
</ul>
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 "'Along average normal' activated (to the left) and deactivated (to the right)"
<p></li>
2015-05-25 14:40:41 +05:00
<li><b>Use only input elements</b> check-box specifies what
elements will be used to compute the average normal.<ul>
2015-03-17 17:06:56 +05:00
<li> If it is \a activated only selected faces, among faces
sharing the node, are used to compute the average normal at
the node. </li>
<li>Else all faces sharing the node are used.</li></ul>
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 "'Use only input elements' activated (to the left) and deactivated (to the right)"
<p></li>
</li>
2012-12-13 17:41:29 +06:00
</ul>
2015-03-17 17:06:56 +05:00
2015-01-23 20:49:49 +05:00
<li>Specify the <b>Number of steps</b>.</li>
2016-08-01 17:42:08 +05:00
<li>Optionally specify <b>Scale Factors</b>. Each scale factor in
the list is applied to nodes of a corresponding extrusion step
unless <b>Linear Variation of Scale Factors</b> is checked, is
which case the scale factors are spread over all extrusion steps.</li>
<ul>
<li><b>Scaling Center</b> can be defined either using spin boxes
or by picking a node in the Viewer or by picking a geometrical
vertex in the Object Browser.</li>
<li>\b Add button adds a scale factor to the list.
\image html add.png
<center><em>"Add" button</em></center>
</li>
<li>\b Remove button removes selected scale factors from the list.
\image html remove.png
<center><em>"Remove" button</em></center>
</li>
</ul>
2014-11-26 17:16:24 +05:00
<li>If you activate <b>Generate Groups</b> check-box, the <em>result elements</em>
2015-01-23 20:49:49 +05:00
created from <em>selected elements</em> contained in groups will be
2014-11-26 17:16:24 +05:00
included into new groups named by pattern "<old group
2015-01-23 20:49:49 +05:00
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>
2012-08-09 16:03:55 +06:00
</ul>
2008-03-07 12:47:05 +05:00
2012-08-09 16:03:55 +06:00
<li>Click \b Apply or <b> Apply and Close</b> button to confirm the operation.</li>
2008-03-07 12:47:05 +05:00
</ol>
2015-03-17 17:06:56 +05:00
<p>
2015-01-23 20:49:49 +05:00
\anchor extrusion_struct
<h2>Example: creation of a structured mesh from scratch</h2>
2008-03-07 12:47:05 +05:00
2015-01-23 20:49:49 +05:00
\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"
2008-03-07 12:47:05 +05:00
<br><b>See Also</b> a sample TUI Script of an
\ref tui_extrusion "Extrusion" operation.
*/