1 # -*- coding: utf-8 -*-
4 from blocFissure import gmu
5 from blocFissure.gmu.geomsmesh import geompy, smesh
16 from ellipse_1 import ellipse_1
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.construitFissureGenerale import construitFissureGenerale
23 O, OX, OY, OZ = triedreBase()
25 class ellipse_2(ellipse_1):
27 problème de fissure non plane, débouchante non normale
30 nomProbleme = "ellipse2"
32 # ---------------------------------------------------------------------------
33 def genereShapeFissure( self, geometriesSaines, geomParams, shapeFissureParams):
34 logging.info("genereShapeFissure %s", self.nomCas)
36 lgInfluence = shapeFissureParams['lgInfluence']
38 shellFiss = geompy.ImportFile(os.path.join(gmu.pathBloc, "materielCasTests/ellipse1_pb.brep"), "BREP")
39 fondFiss = geompy.CreateGroup(shellFiss, geompy.ShapeType["EDGE"])
40 geompy.UnionIDs(fondFiss, [4])
41 geompy.addToStudy( shellFiss, 'shellFiss' )
42 geompy.addToStudyInFather( shellFiss, fondFiss, 'fondFiss' )
45 coordsNoeudsFissure = genereMeshCalculZoneDefaut(shellFiss, 5 ,25)
48 return [shellFiss, centre, lgInfluence, coordsNoeudsFissure, fondFiss]
50 # ---------------------------------------------------------------------------
51 def setReferencesMaillageFissure(self):
52 self.referencesMaillageFissure = dict(Entity_Quad_Pyramid = 159,
53 Entity_Quad_Triangle = 438,
54 Entity_Quad_Edge = 249,
55 Entity_Quad_Penta = 80,
56 Entity_Quad_Hexa = 3635,
58 Entity_Quad_Tetra = 1973,
59 Entity_Quad_Quadrangle = 1658)