Salome HOME
Synchronize adm files
[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 two 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></ul>
74 </li>
75 <li>Finally, confirm your selection by clicking <b>Apply and Close
76 </b> (also closes the Menu) or \b Apply (leaves the Menu open for 
77 creation of other groups), or skip it by clicking \b Close button.
78 </li></ul>
79
80 \n The Result of the operation will be a \b GEOM_Object.
81
82 \n <b>TUI Command:</b> <em>geompy.CreateGroup(MainShape,
83 ShapeType),</em> where MainShape is a shape for which the group is
84 created, ShapeType is a type of shapes in the created group.
85 \n <b>Arguments:</b> 1 Shape + Type of sub-shape.
86
87 Our <b>TUI Scripts</b> provide you with useful examples of 
88 \ref tui_create_groups_anchor "Create a Group" operation.
89
90 <b>Example:</b>
91
92 \image html image193.png "Groups on a cylinder"
93
94 <br>
95 \anchor edit_groups_anchor
96 <h2>Edit a group</h2>
97
98 \image html image57.png
99
100 This functionality is available in OCC viewer only.
101
102 To \b Edit an existing group in the main menu select <b>New entity >
103 Group > Edit</b>. This menu is designed in the same way as the
104 <b>Create a group</b> menu.
105
106 \n When a GEOM group is edited, the main shape appears in the 3D viewer in the same mode 
107 as it is displayed in the viewer. If the main shape was not displayed in the viewer, then 
108 the default mode defined in the preferences will be used. 
109
110 \n <b>Working with Dialog Box:</b> 
111
112 \image html editgroup.png
113
114 \n The subshapes already in the group are displayed in the 3D viewer with a specific color, 
115 defined via preferences. The IDs of the subshapes already in the group are also displayed in 
116 a specific color in the dialog box. When the user adds some subshapes, the new IDs are 
117 displayed in the other color.
118
119 \n The \b Result of the operation will be a \b GEOM_Object.
120
121 \n <b>TUI Command:</b>
122 <ul>
123 <li><em>geompy.AddObject(Group, SubShapeID),</em> where Group is a
124 group to which a sub-shape has to be added, SubShapeID is an ID of the
125 sub-shape to be added to the group.</li>
126 <li><em>geompy.RemoveObject(Group, SubShapeID),</em> where Group is a
127 group from which a sub-shape has to be removed, SubShapeID is an ID of
128 the sub-shape to be removed from the group.</li>
129 <li><em>geompy.GetObjectIDs(Group),</em> where Group is a group for which its object's are returned.
130 \n Returns: List of IDs.</li>
131 </ul>
132
133 \n <b>Arguments:</b> 1 Shape + its sub-shapes.
134
135 Our <b>TUI Scripts</b> provide you with useful examples of 
136 \ref tui_edit_groups_anchor "Edit a Group" operation.
137
138 <br>
139 \anchor union_groups_anchor
140 <h2>Union of groups</h2>
141
142 This operation allows to create a new group in such a way that all
143 sub-shapes that are present in the initial groups will be added to
144 the new one.
145
146 <em>To union groups:</em>
147 <ol>
148 <li>In the <b>New Entity</b> menu select the \b Group - <b>Union Groups</b> item.
149 The following dialog box will appear:
150
151 \image html groups_union_dlg.png
152
153 In this dialog box you should specify the name of the resulting group
154 and select the groups, which will be united.
155 </li>
156 <li>Click the \b Apply or <b>Apply and Close</b> button to confirm creation of the group.</li>
157 </ol>
158
159 <b>See Also</b> a sample TUI Script of a 
160 \ref tui_union_groups_anchor "Union of Groups" operation.
161
162 <br>
163 \anchor intersect_groups_anchor
164 <h2>Intersection of groups</h2>
165
166 This operation allows to create a new group in such a way that only
167 the sub-shapes that are present in all initial groups are added to the
168 new one.
169
170 <em>To intersect groups:</em>
171 <ol>
172 <li>In the <b>New Entity</b> menu select the \b Group - <b>Intersect Groups</b> item.
173 The following dialog box will appear:
174
175 \image html groups_intersect_dlg.png
176
177 In this dialog box you should specify the name of the resulting group
178 and select the groups, which will be intersected.
179 </li>
180 <li>Click the \b Apply or <b>Apply and Close</b> button to confirm creation of the group.</li>
181 </ol>
182
183 <b>See Also</b> a sample TUI Script of an  
184 \ref tui_intersect_groups_anchor "Intersection of Groups" operation.
185
186 <br>
187 \anchor cut_groups_anchor
188 <h2>Cut of groups</h2>
189
190 This operation allows to create a new group in such a way that all
191 sub-shapes that are present in the main groups but are absent in the
192 tool groups are added to the new one.
193
194 <em>To cut groups:</em>
195 <ol>
196 <li>In the <b>New Entity</b> menu select the \b Group - <b>Cut Groups</b> item.
197 The following dialog box will appear:
198
199 \image html groups_cut_dlg.png
200
201 In this dialog box you should specify the name of the resulting group
202 and the groups which will be cut.
203 </li>
204 <li>Click the \b Apply or <b>Apply and Close</b> button to confirm creation of the group.</li>
205 </ol>
206
207 Our <b>TUI Scripts</b> provide you with useful examples of 
208 \ref tui_cut_groups_anchor "Cut of Groups" operation.
209
210 */