/*! \page extrusion_page Extrusion \n Extrusion is used to build mesh elements of plus one 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". \image html extrusion_box.png "If you extrude several quadrangles, you get exactly same mesh as if you meshed a geometrical box (except that the initial quadrangles can be incorrectly oriented): quadrangles and segments on boundary of generated mesh are created" <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, looking different depending on selected options, will appear: \image html extrusionalongaline1.png \image html extrusionalongaline2.png \image html extrusionalongaline3.png </li> <li>In this dialog: <ul> <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 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>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>If the <b>Extrusion to Distance</b> radio button is selected - specify the translation vector by which the elements will be extruded. </li> <li>If the <b>Extrusion Along Vector</b> radio button is selected <ul> <li>specify the coordinates of the \b Vector along which the elements 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> <li>If the <b>Extrusion By Normal</b> radio button is selected, every node of selected faces is extruded along the \a average of the \a normal vectors to the faces sharing the node. (Nodes and edges can't be extruded in this mode.) <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. <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 average normal till its intersection with the virtual plane got 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> <li>Using <b>Use only input elements</b> check-box specify what elements to use to compute the average normal.<ul> <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> </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> <p> \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. */