X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=doc%2Fsalome%2Fexamples%2Ffilters_ex39.py;h=6a2ddd5077618c33daeec7572df1b237191d01ae;hb=f5e84513cda0eda53672cc9d3b1124323b4aa26d;hp=ebbb0b936591ae9f5ed76af956d91d70a3ea47d5;hpb=a17b36970bc61da1d664453c615754997c925b18;p=modules%2Fsmesh.git diff --git a/doc/salome/examples/filters_ex39.py b/doc/salome/examples/filters_ex39.py index ebbb0b936..6a2ddd507 100644 --- a/doc/salome/examples/filters_ex39.py +++ b/doc/salome/examples/filters_ex39.py @@ -1,11 +1,11 @@ -# Elements of a domain +# "Elements of a domain" filter and "Renumber" hypothesis import salome, SMESH salome.salome_init() from salome.geom import geomBuilder -geompy = geomBuilder.New(salome.myStudy) +geompy = geomBuilder.New() from salome.smesh import smeshBuilder -smesh = smeshBuilder.New(salome.myStudy) +smesh = smeshBuilder.New() # create two boxes to have two domains in the mesh @@ -22,24 +22,32 @@ mesh = smesh.Mesh( boxes ) mesh.Segment(box1).NumberOfSegments( 5 ) # to have different nb of elements on the boxes mesh.Segment(box2).NumberOfSegments( 10 ) mesh.Quadrangle() -mesh.Hexahedron() +ijkAlgo = mesh.Hexahedron() + +# Use Renumber hypothesis to get hexahedra and nodes numbered like in a structured mesh. +# k axis of box1 will be ( 100,100,0 ) - ( 100,100,100 ) +# k axis of box2 will be ( 0,0,0 ) - (0,0,100), by default +v000 = geompy.MakeVertex( 100,100,0, theName='v000' ) # can use box sub-vertex or standalone one +v001 = geompy.GetVertexNearPoint( box1, geompy.MakeVertex(100,100,100), theName='v001') +ijkAlgo.Renumber([ smeshBuilder.BlockCS( box1, v000, v001 ) ]) + mesh.Compute() # Create filters with FT_ConnectedElements criterion by pointing a domain in different ways: # using point coordinates in box_1 nodeFilter = smesh.GetFilter( SMESH.NODE, SMESH.FT_ConnectedElements, "=", "1.,2,10", mesh=mesh ) -print "Nb. nodes in box_1:", len( nodeFilter.GetIDs()) +print("Nb. nodes in box_1:", len( nodeFilter.GetIDs())) # using point coordinates in box_2 edgeFilter = smesh.GetFilter( SMESH.EDGE, SMESH.FT_ConnectedElements, "=", [202,1,1 ], mesh=mesh ) -print "Nb. segments in box_2:", len( edgeFilter.GetIDs()) +print("Nb. segments in box_2:", len( edgeFilter.GetIDs())) # using a geom vertex of box_1 faceFilter = smesh.GetFilter( SMESH.FACE, SMESH.FT_ConnectedElements, "=", vertex, mesh=mesh ) -print "Nb. faces in box_1:", len( edgeFilter.GetIDs()) +print("Nb. faces in box_1:", len( edgeFilter.GetIDs())) # using node ID in box_2 voluFilter = smesh.GetFilter( SMESH.VOLUME, SMESH.FT_ConnectedElements, "=", 10, mesh=mesh ) -print "Nb. volumes in box_2:", len( voluFilter.GetIDs()) +print("Nb. volumes in box_2:", len( voluFilter.GetIDs()))