Salome HOME
Merge 'master' branch into 'V9_dev' branch.
[modules/smesh.git] / src / Tools / blocFissure / exemple2.py
1 # -*- coding: iso-8859-1 -*-
2
3 import sys
4 import salome
5
6 salome.salome_init()
7
8 import salome_notebook
9
10 ###
11 ### GEOM component
12 ###
13
14 import GEOM
15 from salome.geom import geomBuilder
16 import math
17 import SALOMEDS
18
19 geompy = geomBuilder.New()
20
21 O = geompy.MakeVertex(0, 0, 0)
22 OX = geompy.MakeVectorDXDYDZ(1, 0, 0)
23 OY = geompy.MakeVectorDXDYDZ(0, 1, 0)
24 OZ = geompy.MakeVectorDXDYDZ(0, 0, 1)
25 Box_1 = geompy.MakeBoxDXDYDZ(200, 200, 200)
26 Vertex_1 = geompy.MakeVertex(0, 0, 100)
27 Disk_1 = geompy.MakeDiskPntVecR(Vertex_1, OZ, 50)
28 Rotation_1 = geompy.MakeRotation(Box_1, OZ, 45*math.pi/180.0)
29 geompy.TranslateDXDYDZ(Rotation_1, -50, -250, 0)
30 Cut_1 = geompy.MakeCut(Disk_1, Rotation_1)
31 geompy.Export(Cut_1, "disk.brep", "BREP")
32 geompy.addToStudy( O, 'O' )
33 geompy.addToStudy( OX, 'OX' )
34 geompy.addToStudy( OY, 'OY' )
35 geompy.addToStudy( OZ, 'OZ' )
36 geompy.addToStudy( Box_1, 'Box_1' )
37 geompy.addToStudy( Vertex_1, 'Vertex_1' )
38 geompy.addToStudy( Disk_1, 'Disk_1' )
39 geompy.addToStudy( Rotation_1, 'Rotation_1' )
40 geompy.addToStudy( Cut_1, 'Cut_1' )
41
42 ###
43 ### SMESH component
44 ###
45
46 import  SMESH, SALOMEDS
47 from salome.smesh import smeshBuilder
48
49 smesh = smeshBuilder.New()
50 from salome.StdMeshers import StdMeshersBuilder
51 boite = smesh.Mesh(Box_1)
52 Regular_1D = boite.Segment()
53 Nb_Segments_1 = Regular_1D.NumberOfSegments(15)
54 Nb_Segments_1.SetDistrType( 0 )
55 Quadrangle_2D = boite.Quadrangle(algo=smeshBuilder.QUADRANGLE)
56 Hexa_3D = boite.Hexahedron(algo=smeshBuilder.Hexa)
57 isDone = boite.Compute()
58 smesh.SetName(boite, 'boite')
59 boite.ExportMED(r'boite.med')
60
61 ## set object names
62 smesh.SetName(boite.GetMesh(), 'boite')
63 smesh.SetName(Regular_1D.GetAlgorithm(), 'Regular_1D')
64 smesh.SetName(Nb_Segments_1, 'Nb. Segments_1')
65 smesh.SetName(Quadrangle_2D.GetAlgorithm(), 'Quadrangle_2D')
66 smesh.SetName(Hexa_3D.GetAlgorithm(), 'Hexa_3D')
67
68 import os
69 from blocFissure import gmu
70 from blocFissure.gmu import initLog
71 #initLog.setDebug()
72 initLog.setVerbose()
73
74 from blocFissure.gmu.casStandard import casStandard
75
76 dicoParams = dict(nomCas            = 'angleCube2',
77                   maillageSain      = 'boite.med',
78                   brepFaceFissure   = "disk.brep",
79                   edgeFissIds       = [4],
80                   lgInfluence       = 50,
81                   meshBrep          = (5,10),
82                   rayonPipe         = 15,
83                   lenSegPipe        = 20,
84                   nbSegRad          = 5,
85                   nbSegCercle       = 12,
86                   areteFaceFissure  = 2)
87
88 execInstance = casStandard(dicoParams)
89
90 if salome.sg.hasDesktop():
91   salome.sg.updateObjBrowser()