3 \page tui_filters_page Filters usage
5 Filters allow picking only the mesh elements satisfying to a
6 specific condition or a set of conditions. Filters can be used to create
7 or edit mesh groups, remove elements from the mesh object, control
8 mesh quality by different parameters, etc.
10 Several filters can be combined together by using logical operators \a
11 AND and \a OR. In addition, applied filter criterion can be reverted
12 using logical operator \a NOT.
14 Mesh filters use the functionality of mesh quality controls to filter
15 mesh nodes / elements by a specific characteristic (Area, Length, etc).
17 This page provides a short description of the existing mesh filters,
18 describes required parameters and gives simple examples of usage in
21 \sa \ref tui_quality_controls_page
23 \section filter_aspect_ratio Aspect ratio
25 Filter 2D mesh elements (faces) according to the aspect ratio value:
26 - element type should be \a smesh.FACE
27 - functor type should be \a smesh.FT_AspectRatio
28 - threshold is floating point value (aspect ratio)
30 \include filters_ex01.py
31 <a href="../../examples/SMESH/filters_ex01.py">Download this script</a>
33 \sa \ref tui_aspect_ratio
35 \section filter_aspect_ratio_3d Aspect ratio 3D
37 Filter 3D mesh elements (volumes) according to the aspect ratio value:
38 - element type is \a smesh.VOLUME
39 - functor type is \a smesh.FT_AspectRatio3D
40 - threshold is floating point value (aspect ratio)
42 \include filters_ex02.py
43 <a href="../../examples/SMESH/filters_ex02.py">Download this script</a>
45 \sa \ref tui_aspect_ratio_3d
47 \section filter_warping_angle Warping angle
49 Filter 2D mesh elements (faces) according to the warping angle value:
50 - element type is \a smesh.FACE
51 - functor type is \a smesh.FT_Warping
52 - threshold is floating point value (warping angle)
54 \include filters_ex03.py
55 <a href="../../examples/SMESH/filters_ex03.py">Download this script</a>
59 \section filter_minimum_angle Minimum angle
61 Filter 2D mesh elements (faces) according to the minimum angle value:
62 - element type is \a smesh.FACE
63 - functor type is \a smesh.FT_MinimumAngle
64 - threshold is floating point value (minimum angle)
66 \include filters_ex04.py
67 <a href="../../examples/SMESH/filters_ex04.py">Download this script</a>
69 \sa \ref tui_minimum_angle
71 \section filter_taper Taper
73 Filter 2D mesh elements (faces) according to the taper value:
74 - element type is \a smesh.FACE
75 - functor type is \a smesh.FT_Taper
76 - threshold is floating point value (taper)
78 \include filters_ex05.py
79 <a href="../../examples/SMESH/filters_ex05.py">Download this script</a>
83 \section filter_skew Skew
85 Filter 2D mesh elements (faces) according to the skew value:
86 - element type is \a smesh.FACE
87 - functor type is \a smesh.FT_Skew
88 - threshold is floating point value (skew)
90 \include filters_ex06.py
91 <a href="../../examples/SMESH/filters_ex06.py">Download this script</a>
95 \section filter_area Area
97 Filter 2D mesh elements (faces) according to the area value:
98 - element type is \a smesh.FACE
99 - functor type is \a smesh.FT_Area
100 - threshold is floating point value (area)
102 \include filters_ex07.py
103 <a href="../../examples/SMESH/filters_ex07.py">Download this script</a>
107 \section filter_volume Volume
109 Filter 3D mesh elements (volumes) according to the volume value:
110 - element type is \a smesh.VOLUME
111 - functor type is \a smesh.FT_Volume3D
112 - threshold is floating point value (volume)
114 \include filters_ex08.py
115 <a href="../../examples/SMESH/filters_ex08.py">Download this script</a>
119 \section filter_free_borders Free borders
121 Filter 1D mesh elements (edges) which represent free borders of a mesh:
122 - element type is \a smesh.EDGE
123 - functor type is \a smesh.FT_FreeBorders
124 - threshold value is not required
126 \include filters_ex09.py
127 <a href="../../examples/SMESH/filters_ex09.py">Download this script</a>
129 \sa \ref tui_free_borders
131 \section filter_free_edges Free edges
133 Filter 2D mesh elements (faces) consisting of edges belonging to one
134 element of mesh only:
135 - element type is \a smesh.FACE
136 - functor type is \a smesh.FT_FreeEdges
137 - threshold value is not required
139 \include filters_ex10.py
140 <a href="../../examples/SMESH/filters_ex10.py">Download this script</a>
142 \sa \ref tui_free_edges
144 \section filter_free_nodes Free nodes
147 - element type is \a smesh.NODE
148 - functor type is \a smesh.FT_FreeNodes
149 - threshold value is not required
151 \include filters_ex11.py
152 <a href="../../examples/SMESH/filters_ex11.py">Download this script</a>
154 \sa \ref tui_free_nodes
156 \section filter_free_faces Free faces
159 - element type is \a smesh.FACE
160 - functor type is \a smesh.FT_FreeFaces
161 - threshold value is not required
163 \include filters_ex12.py
164 <a href="../../examples/SMESH/filters_ex12.py">Download this script</a>
166 \sa \ref tui_free_faces
168 \section filter_bare_border_faces Bare border faces
170 Filter faces with bare borders:
171 - element type is \a smesh.FACE
172 - functor type is \a smesh.FT_BareBorderFace
173 - threshold value is not required
175 \include filters_ex13.py
176 <a href="../../examples/SMESH/filters_ex13.py">Download this script</a>
178 \sa \ref tui_bare_border_faces
180 \section filter_coplanar_faces Coplanar faces
182 Filter faces with bare borders:
183 - element type is \a smesh.FACE
184 - functor type is \a smesh.FT_CoplanarFaces
185 - threshold value is the face ID
186 - tolerance is in degrees
188 \include filters_ex14.py
189 <a href="../../examples/SMESH/filters_ex14.py">Download this script</a>
191 \section filter_over_constrained_faces Over-constrained faces
193 Filter over-constrained faces:
194 - element type is \a smesh.FACE
195 - functor type is \a smesh.FT_OverConstrainedFace
196 - threshold value is not required
198 \include filters_ex15.py
199 <a href="../../examples/SMESH/filters_ex15.py">Download this script</a>
201 \sa \ref tui_over_constrained_faces
203 \section filter_double_elements Double edges, Double faces, Double volumes
205 filter mesh elements basing on the same set of nodes:
206 - element type is either \a smesh.EGDE, \a smesh.FACE or \a smesh.VOLUME
207 - functor type is either \a smesh.FT_EqualEdges, \a
208 smesh.FT_EqualFaces or \a smesh.FT_EqualVolumes,
209 - threshold value is not required
211 \include filters_ex16.py
212 <a href="../../examples/SMESH/filters_ex16.py">Download this script</a>
215 \section tui_double_nodes_control Double nodes
217 filters mesh nodes which are coincident with other nodes (within a given tolerance):
218 - element type is \a smesh.NODE
219 - functor type is \a smesh.FT_EqualNodes
220 - threshold value is not required
221 - default tolerance is 1.0e-7
223 \include filters_ex17.py
224 <a href="../../examples/SMESH/filters_ex17.py">Download this script</a>
227 \section filter_borders_multiconnection Borders at multi-connection
229 Filter border 1D mesh elements (edges) according to the specified number of
230 connections (faces belonging the border edges)
231 - element type is \a smesh.EDGE
232 - functor type is \a smesh.FT_MultiConnection
233 - threshold is integer value (number of connections)
235 \include filters_ex18.py
236 <a href="../../examples/SMESH/filters_ex18.py">Download this script</a>
238 \sa \ref tui_borders_at_multiconnection
240 \section filter_borders_multiconnection_2d Borders at multi-connection 2D
242 Filter 2D mesh elements (faces) which consist of edges belonging
243 to the specified number of mesh elements
244 - element type is \a smesh.FACE
245 - functor type is \a smesh.FT_MultiConnection2D
246 - threshold is integer value (number of connections)
248 \include filters_ex19.py
249 <a href="../../examples/SMESH/filters_ex19.py">Download this script</a>
251 \sa \ref tui_borders_at_multiconnection_2d
253 \section filter_length Length
255 Filter 1D mesh elements (edges) according to the edge length value:
256 - element type should be \a smesh.EDGE
257 - functor type should be \a smesh.FT_Length
258 - threshold is floating point value (length)
260 \include filters_ex20.py
261 <a href="../../examples/SMESH/filters_ex20.py">Download this script</a>
263 \sa \ref tui_length_1d
265 \section filter_length_2d Length 2D
267 Filter 2D mesh elements (faces) corresponding to the maximum length.
269 - element type should be \a smesh.FACE
270 - functor type should be \a smesh.FT_Length2D
271 - threshold is floating point value (edge length)
273 \include filters_ex21.py
274 <a href="../../examples/SMESH/filters_ex21.py">Download this script</a>
276 \sa \ref tui_length_2d
278 \section filter_max_element_length_2d Element Diameter 2D
280 Filter 2D mesh elements (faces) corresponding to the maximum length
281 value of its edges and diagonals:
282 - element type should be \a smesh.FACE
283 - functor type should be \a smesh.FT_MaxElementLength2D
284 - threshold is floating point value (edge/diagonal length)
286 \include filters_ex22.py
287 <a href="../../examples/SMESH/filters_ex22.py">Download this script</a>
289 \sa \ref tui_max_element_length_2d
291 \section filter_max_element_length_3d Element Diameter 3D
293 Filter 3D mesh elements (volumes) corresponding to the maximum length
294 value of its edges and diagonals:
295 - element type should be \a smesh.VOLUME
296 - functor type should be \a smesh.FT_MaxElementLength3D
297 - threshold is floating point value (edge/diagonal length)
299 \include filters_ex23.py
300 <a href="../../examples/SMESH/filters_ex23.py">Download this script</a>
302 \sa \ref tui_max_element_length_3d
304 \section filter_bare_border_volumes Bare border volumes
306 Filter 3D mesh elements with bare borders:
307 - element type is \a smesh.VOLUME
308 - functor type is \a smesh.FT_BareBorderVolume
309 - threshold value is not required
311 \include filters_ex24.py
312 <a href="../../examples/SMESH/filters_ex24.py">Download this script</a>
314 \sa \ref tui_bare_border_volumes
316 \section filter_over_constrained_volumes Over-constrained volumes
318 Filter over-constrained volumes:
319 - element type is \a smesh.VOLUME
320 - functor type is \a smesh.FT_OverConstrainedVolume
321 - threshold value is not required
323 \include filters_ex25.py
324 <a href="../../examples/SMESH/filters_ex25.py">Download this script</a>
326 \sa \ref tui_over_constrained_faces
328 \section filter_belong_to_geom Belong to Geom
330 Filter mesh entities (nodes or elements) which all nodes lie on the
331 shape defined by threshold value:
332 - element type can be any entity type, from \a smesh.NODE to \a smesh.VOLUME
333 - functor type should be \a smesh.FT_BelongToGeom
334 - threshold is geometrical object
336 \include filters_ex26.py
337 <a href="../../examples/SMESH/filters_ex26.py">Download this script</a>
339 \section filter_lying_on_geom Lying on Geom
341 Filter mesh entities (nodes or elements) at least one node of which lies on the
342 shape defined by threshold value:
343 - element type can be any entity type, from \a smesh.NODE to \a smesh.VOLUME
344 - functor type should be \a smesh.FT_LyingOnGeom
345 - threshold is geometrical object
347 \include filters_ex27.py
348 <a href="../../examples/SMESH/filters_ex27.py">Download this script</a>
350 \section filter_belong_to_plane Belong to Plane
352 Filter mesh entities (nodes or elements) which all nodes belong to the
353 plane defined by threshold value with the given tolerance:
354 - element type can be: \a smesh.NODE, \a smesh.EDGE, \a smesh.FACE
355 - functor type should be \a smesh.FT_BelongToPlane
356 - threshold is geometrical object (plane)
357 - default tolerance is 1.0e-7
359 \include filters_ex28.py
360 <a href="../../examples/SMESH/filters_ex28.py">Download this script</a>
362 \section filter_belong_to_cylinder Belong to Cylinder
364 Filter mesh entities (nodes or elements) which all nodes belong to the
365 cylindrical face defined by threshold value with the given tolerance:
366 - element type can be: \a smesh.NODE, \a smesh.EDGE, \a smesh.FACE
367 - functor type should be \a smesh.FT_BelongToCylinder
368 - threshold is geometrical object (cylindrical face)
369 - default tolerance is 1.0e-7
371 \include filters_ex29.py
372 <a href="../../examples/SMESH/filters_ex29.py">Download this script</a>
374 \section filter_belong_to_surface Belong to Surface
376 Filter mesh entities (nodes or elements) which all nodes belong to the
377 arbitrary surface defined by threshold value with the given tolerance:
378 - element type can be: \a smesh.NODE, \a smesh.EDGE, \a smesh.FACE
379 - functor type should be \a smesh.FT_BelongToGenSurface
380 - threshold is geometrical object (arbitrary surface)
381 - default tolerance is 1.0e-7
383 \include filters_ex30.py
384 <a href="../../examples/SMESH/filters_ex30.py">Download this script</a>
386 \section filter_range_of_ids Range of IDs
388 Filter mesh entities elements (nodes or elements) according to the
389 specified identifiers range:
390 - element type can be any entity type, from \a smesh.NODE to \a smesh.VOLUME
391 - functor type is \a smesh.FT_RangeOfIds
392 - threshold is string listing required IDs and/or ranges of IDs, e.g."1,2,3,50-60,63,67,70-78"
394 \include filters_ex31.py
395 <a href="../../examples/SMESH/filters_ex31.py">Download this script</a>
397 \section filter_bad_oriented_volume Badly oriented volume
399 Filter 3D mesh elements (volumes), which are incorrectly oriented from
400 the point of view of MED convention.
401 - element type should be \a smesh.VOLUME
402 - functor type is \a smesh.FT_BadOrientedVolume
403 - threshold is not required
405 \include filters_ex32.py
406 <a href="../../examples/SMESH/filters_ex32.py">Download this script</a>
408 \section filter_linear_or_quadratic Linear / quadratic
410 Filter linear / quadratic mesh elements:
411 - element type should be any element type, e.g.: \a smesh.EDGE, \a smesh.FACE, \a smesh.VOLUME
412 - functor type is \a smesh.FT_LinearOrQuadratic
413 - threshold is not required
414 - if unary operator is set to smesh.FT_LogicalNOT, the quadratic
415 elements are selected, otherwise (by default) linear elements are selected
417 \include filters_ex33.py
418 <a href="../../examples/SMESH/filters_ex33.py">Download this script</a>
420 \section filter_group_color Group color
422 Filter mesh entities, belonging to the group with the color defined by the threshold value.
423 - element type can be any entity type, from \a smesh.NODE to \a smesh.VOLUME
424 - functor type is \a smesh.FT_GroupColor
425 - threshold should be of SALOMEDS.Color type
427 \include filters_ex34.py
428 <a href="../../examples/SMESH/filters_ex34.py">Download this script</a>
430 \section filter_geom_type Geometry type
432 Filter mesh elements by the geometric type defined with the threshold
433 value. The list of available geometric types depends on the element
435 - element type should be any element type, e.g.: \a smesh.EDGE, \a smesh.FACE, \a smesh.VOLUME
436 - functor type should be \a smesh.FT_ElemGeomType
437 - threshold is of smesh.GeometryType value
439 \include filters_ex35.py
440 <a href="../../examples/SMESH/filters_ex35.py">Download this script</a>
442 \section combining_filters How to combine filters with Criterion structures?
444 Filters can be combined by making use of "criteria".
448 \include filters_ex36.py
449 <a href="../../examples/SMESH/filters_ex36.py">Download this script</a>