Salome HOME
493034020f2642ac2b864a4818e9698e75213582
[modules/smesh.git] / doc / salome / examples / defining_hypotheses_ex16.py
1 # "Use Existing Elements" example
2
3 from smesh import *
4 SetCurrentStudy(salome.myStudy)
5
6 # Make a patritioned box
7
8 box = geompy.MakeBoxDXDYDZ(100,100,100)
9
10 N = geompy.MakeVectorDXDYDZ( 1,0,0 )
11 O = geompy.MakeVertex( 50,0,0 )
12 plane = geompy.MakePlane( O, N, 200 ) # plane YOZ
13
14 shape2boxes = geompy.MakeHalfPartition( box, plane )
15 boxes = geompy.SubShapeAllSorted(shape2boxes, geompy.ShapeType["SOLID"])
16
17 geompy.addToStudy( boxes[0], "boxes[0]")
18 geompy.addToStudy( boxes[1], "boxes[1]")
19 midFace0 = geompy.SubShapeAllSorted(boxes[0], geompy.ShapeType["FACE"])[5]
20 geompy.addToStudyInFather( boxes[0], midFace0, "middle Face")
21 midFace1 = geompy.SubShapeAllSorted(boxes[1], geompy.ShapeType["FACE"])[0]
22 geompy.addToStudyInFather( boxes[1], midFace1, "middle Face")
23
24 # Mesh one of boxes with quadrangles. It is a source mesh
25
26 srcMesh = Mesh(boxes[0], "source mesh") # box coloser to CS origin
27 nSeg1 = srcMesh.Segment().NumberOfSegments(4)
28 srcMesh.Quadrangle()
29 srcMesh.Compute()
30 srcFaceGroup = srcMesh.GroupOnGeom( midFace0, "src faces", FACE )
31
32 # Import faces from midFace0 to the target mesh
33
34 tgtMesh = Mesh(boxes[1], "target mesh")
35 importAlgo = tgtMesh.UseExisting2DElements(midFace1)
36 import2hyp = importAlgo.SourceFaces( [srcFaceGroup] )
37 tgtMesh.Segment().NumberOfSegments(3)
38 tgtMesh.Quadrangle()
39 tgtMesh.Compute()
40
41 # Import the whole source mesh with groups
42 import2hyp.SetCopySourceMesh(True,True)
43 tgtMesh.Compute()