Salome HOME
[EDF25906] : redirect output of the wget into MESSAGE macro
[modules/smesh.git] / doc / examples / filters_ex16.py
1 # Double edges, Double faces, Double volumes
2
3 import salome
4 salome.salome_init_without_session()
5
6 import SMESH
7 from salome.geom import geomBuilder
8 from salome.smesh import smeshBuilder
9
10 geom_builder = geomBuilder.New()
11 smesh_builder = smeshBuilder.New()
12
13 # make a mesh on a box
14 box = geom_builder.MakeBoxDXDYDZ(100,100,100)
15 mesh = smesh_builder.Mesh( box, "Box" )
16 mesh.Segment().NumberOfSegments(10)
17 mesh.Quadrangle()
18 mesh.Hexahedron()
19 mesh.Compute()
20 # copy all elements with translation and Merge nodes
21 mesh.TranslateObject( mesh, smesh_builder.MakeDirStruct( 10,0,0), Copy=True )
22 mesh.MergeNodes( mesh.FindCoincidentNodes(1e-7) )
23 # create filters to find equal elements
24 equalEdgesFilter   = smesh_builder.GetFilter(SMESH.EDGE, SMESH.FT_EqualEdges)
25 equalFacesFilter   = smesh_builder.GetFilter(SMESH.FACE, SMESH.FT_EqualFaces)
26 equalVolumesFilter = smesh_builder.GetFilter(SMESH.VOLUME, SMESH.FT_EqualVolumes)
27 # get equal elements
28 print("Number of equal edges:",   len( mesh.GetIdsFromFilter( equalEdgesFilter )))
29 print("Number of equal faces:",   len( mesh.GetIdsFromFilter( equalFacesFilter )))
30 print("Number of equal volumes:", len( mesh.GetIdsFromFilter( equalVolumesFilter )))