Salome HOME
de55fd25f2150183bab09bcec636f7f97f39134c
[modules/smesh.git] / src / Tools / blocFissure / CasTests / eprouvetteDroite_2.py
1 # -*- coding: utf-8 -*-
2
3 import os
4 from blocFissure import gmu
5 from blocFissure.gmu.geomsmesh import geompy, smesh
6
7 import math
8 import GEOM
9 import SALOMEDS
10 import SMESH
11 #import StdMeshers
12 #import GHS3DPlugin
13 #import NETGENPlugin
14 import logging
15
16 from eprouvetteDroite import eprouvetteDroite
17
18 from blocFissure.gmu.triedreBase import triedreBase
19 from blocFissure.gmu.genereMeshCalculZoneDefaut import genereMeshCalculZoneDefaut
20 from blocFissure.gmu.creeZoneDefautDansObjetSain import creeZoneDefautDansObjetSain
21 from blocFissure.gmu.insereFissureGenerale import insereFissureGenerale
22
23 O, OX, OY, OZ = triedreBase()
24
25 class eprouvetteDroite_2(eprouvetteDroite):
26   """
27   problème de fissure plane coupant 3 faces (éprouvette), débouches non normaux, objet plan
28   """
29
30   nomProbleme = "eprouvetteDroite2"
31
32   # ---------------------------------------------------------------------------
33   def genereShapeFissure( self, geometriesSaines, geomParams, shapeFissureParams):
34     logging.info("genereShapeFissure %s", self.nomCas)
35
36     lgInfluence = shapeFissureParams['lgInfluence']
37
38     shellFiss = geompy.ImportFile(os.path.join(gmu.pathBloc, "materielCasTests/EprouvetteDroiteFiss_2.brep"), "BREP")
39     fondFiss = geompy.CreateGroup(shellFiss, geompy.ShapeType["EDGE"])
40     geompy.UnionIDs(fondFiss, [10])
41     geompy.addToStudy( shellFiss, 'shellFiss' )
42     geompy.addToStudyInFather( shellFiss, fondFiss, 'fondFiss' )
43
44
45     coordsNoeudsFissure = genereMeshCalculZoneDefaut(shellFiss, 5 ,10)
46
47     centre = None
48     return [shellFiss, centre, lgInfluence, coordsNoeudsFissure, fondFiss]
49
50   # ---------------------------------------------------------------------------
51   def setReferencesMaillageFissure(self):
52     self.referencesMaillageFissure = dict(Entity_Quad_Pyramid    = 396,
53                                           Entity_Quad_Triangle   = 1084,
54                                           Entity_Quad_Edge       = 510,
55                                           Entity_Quad_Penta      = 96,
56                                           Entity_Quad_Hexa       = 9504,
57                                           Entity_Node            = 55482,
58                                           Entity_Quad_Tetra      = 7545,
59                                           Entity_Quad_Quadrangle = 3724)
60