Salome HOME
Fix crashes in unit tests (produced by stack of transactions)
[modules/shaper.git] / src / FeaturesPlugin / doc / extrusionFeature.rst
1
2 Extrusion
3 =========
4
5 Extrusion feature extrudes selected objects along their normals or the selected axis.
6
7 To perform Extrusion in the active part:
8
9 #. select in the Main Menu *Features - > Extrusion* item  or
10 #. click **Extrusion** button in the toolbar
11
12 .. image:: images/extrusion_btn.png
13    :align: center
14
15 .. centered::
16    **Extrusion** button
17
18 The following property panel will be opened:
19
20 .. image:: images/StartSketch.png
21   :align: center
22
23 .. centered::
24   Start sketch
25
26 There are two variants of the property panel for Extrusion depending on the chosen option:
27
28 .. image:: images/extrusion_by_sizes.png
29    :align: left
30 **By Sizes** extrudes objects by specifying sizes.
31
32 .. image:: images/extrusion_by_bounding_planes.png
33    :align: left
34 **By Bounding Faces** extrudes objects by specifying bounding faces/planes and offsets.
35
36
37 By sizes
38 --------
39
40 .. image:: images/Extrusion1.png
41   :align: center
42
43 .. centered::
44   Extrusion: definition by sizes
45
46 - **Base objects** - contains a list of objects selected in the Object Browser or in the Viewer, which will be extruded.
47 - **Axis** - if selected, it will be the direction of extrusion, otherwise objects normals will be used.
48 - **To size** - size for extrusion in the direction.
49 - **From size** - size for extrusion in the opposite direction.
50
51 **TUI Command**:  *model.addExtrusion(part, objects, size);*
52
53 **Arguments**:   Part + list of objects + size.
54
55 **TUI Command**:  *model.addExtrusion(part, objects, direction, size);*
56
57 **Arguments**:   Part + list of objects + direction + size.
58
59 **TUI Command**:  *model.addExtrusion(part, objects, toSize, fromSize);*
60
61 **Arguments**:   Part + list of objects + to size + from size.
62
63 **TUI Command**:  *model.addExtrusion(part, objects, direction, toSize, fromSize);*
64
65 **Arguments**:   Part + list of objects + direction + to size + from size.
66
67 Result
68 """"""
69
70 The Result of the operation will be an extruded shape:
71
72 .. image:: images/extrusion_by_sizes_result.png
73            :align: center
74
75 .. centered::
76    **Created Extrusion**
77
78 **See Also** a sample TUI Script of :ref:`tui_create_extrusion_by_sizes` operation.
79
80 By bounding faces
81 ------------------
82
83 .. image:: images/Extrusion2.png
84   :align: center
85
86 .. centered::
87   Extrusion: definition by bounding faces
88
89 - **Base objects** - contains a list of objects selected in the Object Browser or in the Viewer, which will be extruded.
90 - **Axis** if selected, it will be direction of extrusion, otherwise objects normals will be used.
91 - **To face** - a face can be selected to bound extrusion from one side.
92 - **To offset** - offset for extrusion or for bounding plane, if selected.
93 - **From face** - a face can be selected to bound extrusion from the other side.
94 - **From offset** - offset for extrusion or for bounding plane, if selected.
95
96 Planar face selected as a boundary of extrusion will be enlarged infinitely. As a result, extrusion bounded only by planar faces will be completed always.
97 On the other hand, if the boundary face is not planar, extrusion may fail, for example, in case of the base object cannot be projected to this face along given direction.
98
99 **TUI Command**:  *model.addExtrusion(part, objects, toObject, toOffset, fromObject, fromOffset);*
100
101 **Arguments**:   Part + list of objects + to object + to offset + from object + from offset.
102
103 **TUI Command**:  *model.addExtrusion(part, objects, direction, toObject, toOffset, fromObject, fromOffset);*
104
105 **Arguments**:   Part + list of objects + direction + to object + to offset + from object + from offset.
106
107 Result
108 """"""
109
110 The Result of the operation will be an extruded shape:
111
112 .. image:: images/extrusion_by_bounding_planes_result.png
113            :align: center
114
115 .. centered::
116    **Created Extrusion**
117
118 **See Also** a sample TUI Script of :ref:`tui_create_extrusion_by_bounding_planes` operation.