Salome HOME
36a0d49a30b84f48fb5abc434f6493376a53eba7
[modules/geom.git] / doc / salome / gui / GEOM / input / working_with_groups.doc
1 /*!
2
3 \page work_with_groups_page Working with groups
4
5 Creation and editing groups of sub-shapes of a geometrical object makes
6 handling sub-shapes much easier. Boolean operations on
7 groups are also available.
8
9 <ul>
10 <li>\ref create_groups_anchor "Create a Group"</li>
11 <li>\ref edit_groups_anchor "Edit a Group"</li>
12 <li>\ref union_groups_anchor "Union Groups"</li>
13 <li>\ref intersect_groups_anchor "Intersect Groups"</li>
14 <li>\ref cut_groups_anchor "Cut Groups"</li>
15 </ul>
16
17 <br>
18 \anchor create_groups_anchor
19 <h2>Create a group</h2>
20
21 \image html image56.png
22
23 This functionality is available in OCC viewer only.
24
25 To create a group of sub-shapes of a geometrical object in the main
26 menu select <b>New entity > Group > Create</b>
27 \n The following menu will appear:
28
29 \image html geomcreategroup.png
30
31 In this Menu:
32
33 <ul>
34 <li><b>Shape Type</b> radio button defines the type of elements for the
35 group (points, wires, faces, shells or solids).</li>
36 <li><b>Group Name</b> - allows defining the name of the group, by
37 default, it is Group_n.</li>
38 <li>Then, using the "Select" button, select the <b>Main Shape</b> (a
39 geometrical object on which the group will be created). </li>
40 <li> <b>Main Shape Selection restriction</b> button group allows limiting the range
41 of available group elements,
42 <ul><li> <b>No restriction</b> button enables all sub-shapes of the Main
43 Shape.</li>
44 <li><b>Geometrical parts of the Second Shape</b> restricts the range of accessible
45 elements to the sub-shapes of the Main Shape that geometrically
46 coincide with the <b>Second Shape</b>.</li>
47 <li><b>Only Sub-shapes of the Second Shape</b> restricts the range of
48 accessible elements to the sub-shapes of the Main Shape that 
49 are sub-shapes of the <b>Second Shape</b>. This is useful because 
50 sometimes purely geometrical coincidence is not enough and it 
51 is necessary to work with shapes, which actually belong both 
52 to the main and the second shape.</li>
53 </ul>
54 <li>You can selectively display the selected elements using the following buttons:</li>
55 <ul>
56 <li><b>Show only selected</b> - displays only the sub-shapes selected in the list box.</li>
57 <li><b>Hide selected</b> - hides the sub-shapes selected in the list box.</li>
58 <li><b>Show all sub-shapes</b> - displays only the sub-shapes of the Main Shape.</li>
59 </ul>
60 <li> You can select the elements of your group in several ways:
61 <ul>
62 <li>You can select them manually in the 3D Viewer, and add to the
63 group by clicking the \b Add button (keep down the Shift button on the
64 keyboard to select several elements and add all them together). The
65 indexes of the selected elements will be displayed in the list. To
66 delete elements from the list, select them and click \b Remove
67 button.</li>
68 <li>Clicking <b>Select All</b> button you can add all object's
69 elements of a certain type in the list of the elements of the
70 group. If the <b>Second Shape</b> is used, the elements are added 
71 according to <b>Main Shape Selection restriction</b> settings. To delete elements 
72 from the list, select them and click \b Remove button.
73 </li>
74 <li>Filtering out some entities according to the specified threshold value or values
75 (see below).</li></ul>
76 </li>
77 <li>Finally, confirm your selection by clicking <b>Apply and Close
78 </b> (also closes the Menu) or \b Apply (leaves the Menu open for 
79 creation of other groups), or skip it by clicking \b Close button.
80 </li></ul>
81
82 \n The Result of the operation will be a \b GEOM_Object.
83
84 The \b Filter controls allow to automatically pick up entites which satisfy specified 
85 threshold value(s). The numerical functor for each sub-shape that is compared with
86 threshold value(s) is computed according to the shape's topological properties:
87 - length for edges and wires
88 - area for faces and shells
89 - volume for solids, compounds, compsolids
90
91 Filtering capabilities are not available for vertices.
92
93 In order to filter out some entities:
94 - Activate one or two filtering controls by switching on corresponding check boxes;
95 - Select required threshold comparator type; the following choices are available:
96   - <b>Less Than</b> or <b>Equal or Less Than</b> for the first comparator;
97   - <b>Greater Than</b> or <b>Equal or Greater Than</b> for the second comparator;
98 - Enter required threshold value (values);
99 - Press \b Apply button in the \b Filter group.
100
101 The entities which satisfy entered filtering parameters will be automatically highlighted
102 in the 3D viewer.
103
104 \n <b>TUI Command:</b> <em>geompy.CreateGroup(MainShape,
105 ShapeType),</em> where MainShape is a shape for which the group is
106 created, ShapeType is a type of shapes in the created group.
107 \n <b>Arguments:</b> 1 Shape + Type of sub-shape.
108
109 Our <b>TUI Scripts</b> provide you with useful examples of 
110 \ref tui_create_groups_anchor "Create a Group" operation.
111
112 <b>Example:</b>
113
114 \image html image193.png "Groups on a cylinder"
115
116 <br>
117 \anchor edit_groups_anchor
118 <h2>Edit a group</h2>
119
120 \image html image57.png
121
122 This functionality is available in OCC viewer only.
123
124 To \b Edit an existing group in the main menu select <b>New entity >
125 Group > Edit</b>. This menu is designed in the same way as the
126 <b>Create a group</b> menu.
127
128 \n When a GEOM group is edited, the main shape appears in the 3D viewer in the same mode 
129 as it is displayed in the viewer. If the main shape was not displayed in the viewer, then 
130 the default mode defined in the preferences will be used. 
131
132 \n <b>Working with Dialog Box:</b> 
133
134 \image html editgroup.png
135
136 \n The subshapes already in the group are displayed in the 3D viewer with a specific color, 
137 defined via preferences. The IDs of the subshapes already in the group are also displayed in 
138 a specific color in the dialog box. When the user adds some subshapes, the new IDs are 
139 displayed in the other color.
140
141 \n The \b Result of the operation will be a \b GEOM_Object.
142
143 \n <b>TUI Command:</b>
144 <ul>
145 <li><em>geompy.AddObject(Group, SubShapeID),</em> where Group is a
146 group to which a sub-shape has to be added, SubShapeID is an ID of the
147 sub-shape to be added to the group.</li>
148 <li><em>geompy.RemoveObject(Group, SubShapeID),</em> where Group is a
149 group from which a sub-shape has to be removed, SubShapeID is an ID of
150 the sub-shape to be removed from the group.</li>
151 <li><em>geompy.GetObjectIDs(Group),</em> where Group is a group for which its object's are returned.
152 \n Returns: List of IDs.</li>
153 </ul>
154
155 \n <b>Arguments:</b> 1 Shape + its sub-shapes.
156
157 Our <b>TUI Scripts</b> provide you with useful examples of 
158 \ref tui_edit_groups_anchor "Edit a Group" operation.
159
160 <br>
161 \anchor union_groups_anchor
162 <h2>Union of groups</h2>
163
164 This operation allows to create a new group in such a way that all
165 sub-shapes that are present in the initial groups will be added to
166 the new one.
167
168 <em>To union groups:</em>
169 <ol>
170 <li>In the <b>New Entity</b> menu select the \b Group - <b>Union Groups</b> item.
171 The following dialog box will appear:
172
173 \image html groups_union_dlg.png
174
175 In this dialog box you should specify the name of the resulting group
176 and select the groups, which will be united.
177 </li>
178 <li>Click the \b Apply or <b>Apply and Close</b> button to confirm creation of the group.</li>
179 </ol>
180
181 <b>See Also</b> a sample TUI Script of a 
182 \ref tui_union_groups_anchor "Union of Groups" operation.
183
184 <br>
185 \anchor intersect_groups_anchor
186 <h2>Intersection of groups</h2>
187
188 This operation allows to create a new group in such a way that only
189 the sub-shapes that are present in all initial groups are added to the
190 new one.
191
192 <em>To intersect groups:</em>
193 <ol>
194 <li>In the <b>New Entity</b> menu select the \b Group - <b>Intersect Groups</b> item.
195 The following dialog box will appear:
196
197 \image html groups_intersect_dlg.png
198
199 In this dialog box you should specify the name of the resulting group
200 and select the groups, which will be intersected.
201 </li>
202 <li>Click the \b Apply or <b>Apply and Close</b> button to confirm creation of the group.</li>
203 </ol>
204
205 <b>See Also</b> a sample TUI Script of an  
206 \ref tui_intersect_groups_anchor "Intersection of Groups" operation.
207
208 <br>
209 \anchor cut_groups_anchor
210 <h2>Cut of groups</h2>
211
212 This operation allows to create a new group in such a way that all
213 sub-shapes that are present in the main groups but are absent in the
214 tool groups are added to the new one.
215
216 <em>To cut groups:</em>
217 <ol>
218 <li>In the <b>New Entity</b> menu select the \b Group - <b>Cut Groups</b> item.
219 The following dialog box will appear:
220
221 \image html groups_cut_dlg.png
222
223 In this dialog box you should specify the name of the resulting group
224 and the groups which will be cut.
225 </li>
226 <li>Click the \b Apply or <b>Apply and Close</b> button to confirm creation of the group.</li>
227 </ol>
228
229 Our <b>TUI Scripts</b> provide you with useful examples of 
230 \ref tui_cut_groups_anchor "Cut of Groups" operation.
231
232 */