X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FTools%2FblocFissure%2FCasTests%2Ffissure_Coude.py;h=75f584c0c7afbaaf4fd5ec67bd938c7b2dc4fbb1;hp=a348ae4543975e90d04cd1c988d3bcce1f59621f;hb=140b89fcdf34becd8a3be2f1e276ad0960383eca;hpb=fd1b23f8046f7c063b80443c20fae2cc3bc6bc00 diff --git a/src/Tools/blocFissure/CasTests/fissure_Coude.py b/src/Tools/blocFissure/CasTests/fissure_Coude.py index a348ae454..75f584c0c 100644 --- a/src/Tools/blocFissure/CasTests/fissure_Coude.py +++ b/src/Tools/blocFissure/CasTests/fissure_Coude.py @@ -1,19 +1,39 @@ # -*- coding: utf-8 -*- +# Copyright (C) 2014-2021 EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +"""Fissure dans un coude""" -from blocFissure import gmu -from blocFissure.gmu.geomsmesh import geompy, smesh - +import logging +import os import math + import GEOM -import SALOMEDS import SMESH -#import StdMeshers -#import GHS3DPlugin -#import NETGENPlugin -import logging -from blocFissure.gmu.fissureGenerique import fissureGenerique +from blocFissure.gmu.geomsmesh import geompy +from blocFissure.gmu.geomsmesh import smesh +from blocFissure.gmu.geomsmesh import geomPublish +from blocFissure.gmu.geomsmesh import geomPublishInFather +from blocFissure.gmu import initLog +from blocFissure.gmu.putName import putName +from blocFissure.gmu.fissureGenerique import fissureGenerique from blocFissure.gmu.triedreBase import triedreBase from blocFissure.gmu.genereMeshCalculZoneDefaut import genereMeshCalculZoneDefaut from blocFissure.gmu.creeZoneDefautDansObjetSain import creeZoneDefautDansObjetSain @@ -22,12 +42,19 @@ from blocFissure.gmu.insereFissureLongue import insereFissureLongue O, OX, OY, OZ = triedreBase() class fissure_Coude(fissureGenerique): - """ - problème de fissure du Coude : version de base + """problème de fissure du Coude : version de base + maillage hexa """ - nomProbleme = "tuyau_Coude" + nomProbleme = "fissure_Coude" + geomParams = dict() + meshParams = dict() + shapeFissureParams = dict() + maillageFissureParams = dict() + referencesMaillageFissure = dict() + circonferentielle = False + longitudinale = False # --------------------------------------------------------------------------- def setParamGeometrieSaine(self): @@ -69,60 +96,61 @@ class fissure_Coude(fissureGenerique): Rotation_2 = geompy.MakeRotation(OZ, OY, angleCoude*math.pi/180.0) Extrusion_2 = geompy.MakePrismVecH(Rotation_1, Rotation_2, -l_tube_p2) Plane_1 = geompy.MakePlaneLCS(None, 100000, 3) - geompy.addToStudy( Plane_1, "Plane_1" ) - geompy.addToStudy( Extrusion_1, "Extrusion_1" ) - geompy.addToStudy( Revolution_1, "Revolution_1" ) - geompy.addToStudy( Extrusion_2, "Extrusion_2" ) + geomPublish(initLog.debug, Plane_1, "Plane_1" ) + geomPublish(initLog.debug, Extrusion_1, "Extrusion_1" ) + geomPublish(initLog.debug, Revolution_1, "Revolution_1" ) + geomPublish(initLog.debug, Extrusion_2, "Extrusion_2" ) P1 = O - geompy.addToStudy( P1, "P1" ) + geomPublish(initLog.always, P1, "P1", self.numeroCas ) op2 = geompy.MakeVertex(0, 0, -l_tube_p1) P2 = geompy.MakeRotation(op2, axe, angleCoude*math.pi/180.0) P2 = geompy.MakeTranslationVectorDistance(P2, Rotation_2, -l_tube_p2) - geompy.addToStudy( P2, "P2" ) + geomPublish(initLog.always, P2, "P2", self.numeroCas ) + # --- tube coude sain geometrieSaine = geompy.MakePartition([Extrusion_1, Revolution_1, Extrusion_2, P1, P2], [Plane_1], [], [], geompy.ShapeType["SOLID"], 0, [], 1) - geompy.addToStudy( geometrieSaine, self.nomCas ) + geomPublish(initLog.always, geometrieSaine, self.nomCas, self.numeroCas ) [P1, P2] = geompy.RestoreGivenSubShapes(geometrieSaine, [P1, P2], GEOM.FSM_GetInPlaceByHistory, False, True) [ep, circ_g, circ_d, long_p2, long_coude, long_p1] = geompy.Propagate(geometrieSaine) - geompy.addToStudyInFather( geometrieSaine, long_p1, 'long_p1' ) - geompy.addToStudyInFather( geometrieSaine, ep, 'ep' ) - geompy.addToStudyInFather( geometrieSaine, long_coude, 'long_coude' ) - geompy.addToStudyInFather( geometrieSaine, circ_g, 'circ_g' ) - geompy.addToStudyInFather( geometrieSaine, circ_d, 'circ_d' ) - geompy.addToStudyInFather( geometrieSaine, long_p2, 'long_p2' ) + geomPublishInFather(initLog.always, geometrieSaine, long_p1, 'long_p1' ) + geomPublishInFather(initLog.always, geometrieSaine, ep, 'ep' ) + geomPublishInFather(initLog.always, geometrieSaine, long_coude, 'long_coude' ) + geomPublishInFather(initLog.always, geometrieSaine, circ_g, 'circ_g' ) + geomPublishInFather(initLog.always, geometrieSaine, circ_d, 'circ_d' ) + geomPublishInFather(initLog.always, geometrieSaine, long_p2, 'long_p2' ) # --- face extremite tube (EXTUBE) facesIds = geompy.GetShapesOnPlaneIDs(geometrieSaine, geompy.ShapeType["FACE"], OZ, GEOM.ST_ON) EXTUBE = geompy.CreateGroup(geometrieSaine, geompy.ShapeType["FACE"]) geompy.UnionIDs(EXTUBE, facesIds) - geompy.addToStudyInFather( geometrieSaine, EXTUBE, 'EXTUBE' ) + geomPublishInFather(initLog.always, geometrieSaine, EXTUBE, 'EXTUBE' ) # --- edge bord extremite tube (BORDTU) edge1Ids = geompy.GetShapesOnPlaneIDs(geometrieSaine, geompy.ShapeType["EDGE"], OZ, GEOM.ST_ON) edge2Ids = geompy.GetShapesOnCylinderIDs(geometrieSaine, geompy.ShapeType["EDGE"], OZ, de/2., GEOM.ST_ON) - edgesIds = [] + edgesIds = list() for edge in edge1Ids: if edge in edge2Ids: edgesIds.append(edge) BORDTU = geompy.CreateGroup(geometrieSaine, geompy.ShapeType["EDGE"]) geompy.UnionIDs(BORDTU, edgesIds) - geompy.addToStudyInFather( geometrieSaine, BORDTU, 'BORDTU' ) + geomPublishInFather(initLog.always, geometrieSaine, BORDTU, 'BORDTU' ) # --- face origine tube (CLGV) pp2 = geompy.MakeTranslationVectorDistance(P2, Rotation_2, 10) vec2 = geompy.MakeVector(P2, pp2) - #geompy.addToStudy(vec2, 'vec2') + #geomPublish(initLog.debug,vec2, 'vec2') facesIds = geompy.GetShapesOnPlaneIDs(geometrieSaine, geompy.ShapeType["FACE"], vec2, GEOM.ST_ON) CLGV = geompy.CreateGroup(geometrieSaine, geompy.ShapeType["FACE"]) geompy.UnionIDs(CLGV, facesIds) - geompy.addToStudyInFather( geometrieSaine, CLGV, 'CLGV' ) + geomPublishInFather(initLog.always, geometrieSaine, CLGV, 'CLGV' ) # --- peau tube interieur (PEAUINT) @@ -132,11 +160,11 @@ class fissure_Coude(fissureGenerique): extru2 = geompy.MakePrismVecH(rot1, Rotation_2, -l_tube_p2) interne = geompy.MakeFuse(extru1, revol1) interne = geompy.MakeFuse(extru2, interne) - geompy.addToStudy(interne, 'interne') + geomPublish(initLog.debug,interne, 'interne') facesIds = geompy.GetShapesOnShapeIDs(interne, geometrieSaine, geompy.ShapeType["FACE"], GEOM.ST_ONIN) PEAUINT = geompy.CreateGroup(geometrieSaine, geompy.ShapeType["FACE"]) geompy.UnionIDs(PEAUINT, facesIds) - geompy.addToStudyInFather( geometrieSaine, PEAUINT, 'PEAUINT' ) + geomPublishInFather(initLog.always, geometrieSaine, PEAUINT, 'PEAUINT' ) # --- peau tube exterieur (PEAUEXT) @@ -148,18 +176,18 @@ class fissure_Coude(fissureGenerique): extru2 = geompy.MakePrismVecH(rot1, Rotation_2, -l_tube_p2) externe = geompy.MakeFuse(extru1, revol1) externe = geompy.MakeFuse(extru2, externe) - geompy.addToStudy(externe, 'externe') + geomPublish(initLog.debug,externe, 'externe') facesIds = geompy.GetShapesOnShapeIDs(externe, geometrieSaine, geompy.ShapeType["FACE"], GEOM.ST_ON) PEAUEXT = geompy.CreateGroup(geometrieSaine, geompy.ShapeType["FACE"]) geompy.UnionIDs(PEAUEXT, facesIds) - geompy.addToStudyInFather( geometrieSaine, PEAUEXT, 'PEAUEXT' ) + geomPublishInFather(initLog.always, geometrieSaine, PEAUEXT, 'PEAUEXT' ) # --- solide sain volIds = geompy.SubShapeAllIDs(geometrieSaine, geompy.ShapeType["SOLID"]) COUDE = geompy.CreateGroup(geometrieSaine, geompy.ShapeType["SOLID"]) geompy.UnionIDs(COUDE, volIds) - geompy.addToStudyInFather( geometrieSaine, COUDE, 'COUDSAIN' ) + geomPublishInFather(initLog.always, geometrieSaine, COUDE, 'COUDSAIN' ) geometriesSaines = [geometrieSaine, long_p1, ep, long_coude, circ_g, circ_d, long_p2, P1, P2, EXTUBE, BORDTU, CLGV, PEAUINT, PEAUEXT, COUDE] @@ -205,49 +233,49 @@ class fissure_Coude(fissureGenerique): algo3d = maillageSain.Hexahedron() algo2d = maillageSain.Quadrangle() - smesh.SetName(algo3d, "algo3d_maillageSain") - smesh.SetName(algo2d, "algo2d_maillageSain") + putName(algo3d, "3d_maillageSain", i_pref=self.numeroCas) + putName(algo2d, "2d_maillageSain", i_pref=self.numeroCas) algo1d_long_p1 = maillageSain.Segment(geom=long_p1) hypo1d_long_p1 = algo1d_long_p1.NumberOfSegments(n_long_p1) - smesh.SetName(algo1d_long_p1, "algo1d_long_p1") - smesh.SetName(hypo1d_long_p1, "hypo1d_long_p1") + putName(algo1d_long_p1, "algo1d_long_p1", i_pref=self.numeroCas) + putName(hypo1d_long_p1, "hypo1d_long_p1", i_pref=self.numeroCas) algo1d_ep = maillageSain.Segment(geom=ep) hypo1d_ep = algo1d_ep.NumberOfSegments(n_ep) - smesh.SetName(algo1d_ep, "algo1d_ep") - smesh.SetName(hypo1d_ep, "hypo1d_ep") + putName(algo1d_ep, "algo1d_ep", i_pref=self.numeroCas) + putName(hypo1d_ep, "hypo1d_ep", i_pref=self.numeroCas) algo1d_long_coude = maillageSain.Segment(geom=long_coude) hypo1d_long_coude = algo1d_long_coude.NumberOfSegments(n_long_coude) - smesh.SetName(algo1d_long_coude, "algo1d_long_coude") - smesh.SetName(hypo1d_long_coude, "hypo1d_long_coude") + putName(algo1d_long_coude, "algo1d_long_coude", i_pref=self.numeroCas) + putName(hypo1d_long_coude, "hypo1d_long_coude", i_pref=self.numeroCas) algo1d_circ_g = maillageSain.Segment(geom=circ_g) hypo1d_circ_g = algo1d_circ_g.NumberOfSegments(n_circ_g) - smesh.SetName(algo1d_circ_g, "algo1d_circ_g") - smesh.SetName(hypo1d_circ_g, "hypo1d_circ_g") + putName(algo1d_circ_g, "algo1d_circ_g", i_pref=self.numeroCas) + putName(hypo1d_circ_g, "hypo1d_circ_g", i_pref=self.numeroCas) algo1d_circ_d = maillageSain.Segment(geom=circ_d) hypo1d_circ_d = algo1d_circ_d.NumberOfSegments(n_circ_d) - smesh.SetName(algo1d_circ_d, "algo1d_circ_d") - smesh.SetName(hypo1d_circ_d, "hypo1d_circ_d") + putName(algo1d_circ_d, "algo1d_circ_d", i_pref=self.numeroCas) + putName(hypo1d_circ_d, "hypo1d_circ_d", i_pref=self.numeroCas) algo1d_long_p2 = maillageSain.Segment(geom=long_p2) hypo1d_long_p2 = algo1d_long_p2.NumberOfSegments(n_long_p2) - smesh.SetName(algo1d_long_p2, "algo1d_long_p2") - smesh.SetName(hypo1d_long_p2, "hypo1d_long_p2") + putName(algo1d_long_p2, "algo1d_long_p2", i_pref=self.numeroCas) + putName(hypo1d_long_p2, "hypo1d_long_p2", i_pref=self.numeroCas) - isDone = maillageSain.Compute() + _ = maillageSain.GroupOnGeom(P1,'P1',SMESH.NODE) + _ = maillageSain.GroupOnGeom(P2,'P2',SMESH.NODE) + _ = maillageSain.GroupOnGeom(EXTUBE,'EXTUBE',SMESH.FACE) + _ = maillageSain.GroupOnGeom(BORDTU,'BORDTU',SMESH.EDGE) + _ = maillageSain.GroupOnGeom(CLGV,'CLGV',SMESH.FACE) + _ = maillageSain.GroupOnGeom(PEAUINT,'PEAUINT',SMESH.FACE) + _ = maillageSain.GroupOnGeom(PEAUEXT,'PEAUEXT',SMESH.FACE) + _ = maillageSain.GroupOnGeom(COUDE,'COUDSAIN',SMESH.VOLUME) - mp1 = maillageSain.GroupOnGeom(P1,'P1',SMESH.NODE) - mp2 = maillageSain.GroupOnGeom(P2,'P2',SMESH.NODE) - ext = maillageSain.GroupOnGeom(EXTUBE,'EXTUBE',SMESH.FACE) - btu = maillageSain.GroupOnGeom(BORDTU,'BORDTU',SMESH.EDGE) - clg = maillageSain.GroupOnGeom(CLGV,'CLGV',SMESH.FACE) - pei = maillageSain.GroupOnGeom(PEAUINT,'PEAUINT',SMESH.FACE) - pex = maillageSain.GroupOnGeom(PEAUEXT,'PEAUEXT',SMESH.FACE) - cou = maillageSain.GroupOnGeom(COUDE,'COUDSAIN',SMESH.VOLUME) + _ = maillageSain.Compute() return [maillageSain, True] # True : maillage hexa @@ -274,14 +302,15 @@ class fissure_Coude(fissureGenerique): externe = True) # --------------------------------------------------------------------------- - def genereShapeFissure( self, geometriesSaines, geomParams, shapeFissureParams): + def genereShapeFissure( self, geometriesSaines, geomParams, shapeFissureParams, \ + mailleur="MeshGems"): logging.info("genereShapeFissure %s", self.nomCas) logging.info("shapeFissureParams %s", shapeFissureParams) - angleCoude = geomParams['angleCoude'] + #angleCoude = geomParams['angleCoude'] r_cintr = geomParams['r_cintr'] l_tube_p1 = geomParams['l_tube_p1'] - l_tube_p2 = geomParams['l_tube_p2'] + #l_tube_p2 = geomParams['l_tube_p2'] epais = geomParams['epais'] de = geomParams['de'] @@ -299,17 +328,14 @@ class fissure_Coude(fissureGenerique): if not lgInfluence: lgInfluence = profondeur - if longueur > 2*profondeur: - self.fissureLongue=True - else: - self.fissureLongue=False + self.fissureLongue = bool(longueur > 2*profondeur) - self.circonferentielle = False - self.longitudinale = False - if self.fissureLongue and (abs(orientation) < 45) : + if self.fissureLongue and (abs(orientation) < 45.) : self.longitudinale = True elif self.fissureLongue: self.circonferentielle = True + #logging.info("longitudinale %s", self.longitudinale) + #logging.info("circonferentielle %s", self.circonferentielle) if self.circonferentielle: if externe: @@ -346,15 +372,15 @@ class fissure_Coude(fissureGenerique): facetuber = geompy.MakeRotation(facetube0, OZ, -angle) face0 = geompy.MakeFaceWires([arcl,arci, arce, arcr], 1) plan0 = geompy.MakePlane(O, OZ, 10000) - geompy.addToStudy( face0, 'facefissOrig' ) + geomPublish(initLog.debug, face0, 'facefissOrig' ) face1 = geompy.MakeRotation(face0, OZ, azimut*math.pi/180.) face2 = geompy.MakeTranslation(face1, 0, 0, -l_tube_p1) facefiss = geompy.MakeRotation(face2, axe, alpha*math.pi/180.) - geompy.addToStudy( facefiss, 'facefissPlace' ) + geomPublish(initLog.always, facefiss, "facefissPlace", self.numeroCas ) centre = geompy.MakeRotation(pb, OZ, azimut*math.pi/180.) centre = geompy.MakeTranslation(centre, 0, 0, -l_tube_p1) centre = geompy.MakeRotation(centre, axe, alpha*math.pi/180.) - geompy.addToStudy( centre, 'centrefissPlace' ) + geomPublish(initLog.always, centre, "centrefissPlace", self.numeroCas ) arcr = geompy.MakeRotation(arcr, OZ, azimut*math.pi/180.) arcr = geompy.MakeTranslation(arcr, 0, 0, -l_tube_p1) arcr = geompy.MakeRotation(arcr, axe, alpha*math.pi/180.) @@ -367,24 +393,24 @@ class fissure_Coude(fissureGenerique): wiretube = geompy.MakeRotation(wire0, OZ, azimut*math.pi/180.) wiretube = geompy.MakeTranslation(wiretube, 0, 0, -l_tube_p1) wiretube = geompy.MakeRotation(wiretube, axe, alpha*math.pi/180.) - geompy.addToStudy(wiretube, 'wiretubePlace' ) + geomPublish(initLog.always,wiretube, "wiretubePlace", self.numeroCas ) facetubel = geompy.MakeRotation(facetubel, OZ, azimut*math.pi/180.) facetubel = geompy.MakeTranslation(facetubel, 0, 0, -l_tube_p1) facetubel = geompy.MakeRotation(facetubel, axe, alpha*math.pi/180.) - geompy.addToStudy(facetubel, 'facetubeGauche' ) + geomPublish(initLog.debug,facetubel, 'facetubeGauche' ) facetuber = geompy.MakeRotation(facetuber, OZ, azimut*math.pi/180.) facetuber = geompy.MakeTranslation(facetuber, 0, 0, -l_tube_p1) facetuber = geompy.MakeRotation(facetuber, axe, alpha*math.pi/180.) - geompy.addToStudy(facetuber, 'facetubeDroit' ) + geomPublish(initLog.debug,facetuber, 'facetubeDroit' ) planfiss = geompy.MakeRotation(plan0, OZ, azimut*math.pi/180.) planfiss = geompy.MakeTranslation(planfiss, 0, 0, -l_tube_p1) planfiss = geompy.MakeRotation(planfiss, axe, alpha*math.pi/180.) - geompy.addToStudy(planfiss, 'planfissPlace' ) + geomPublish(initLog.always,planfiss, "planfissPlace", self.numeroCas ) pipefissl = geompy.MakePipe(facetubel, arcl) pipefissi = geompy.MakePipe(facetubel, arci) pipefissr = geompy.MakePipe(facetuber, arcr) pipefiss = geompy.MakePartition([pipefissl, pipefissi, pipefissr], [planfiss, wiretube], [], [], geompy.ShapeType["SOLID"], 0, [], 0) - geompy.addToStudy(pipefiss, 'pipefissPlace' ) + geomPublish(initLog.always,pipefiss, "pipefissPlace", self.numeroCas ) elif self.longitudinale: @@ -413,55 +439,56 @@ class fissure_Coude(fissureGenerique): arcr = geompy.MakeArc(pir, prr, per) arci = geompy.MakeArc(pil, pi, pir) arce = geompy.MakeArc(pel, pe, per) - geompy.addToStudy( arcl, 'arcl' ) - geompy.addToStudy( arcr, 'arcr' ) - geompy.addToStudy( arci, 'arci' ) - geompy.addToStudy( arce, 'arce' ) + geomPublish(initLog.debug, arcl, 'arcl' ) + geomPublish(initLog.debug, arcr, 'arcr' ) + geomPublish(initLog.debug, arci, 'arci' ) + geomPublish(initLog.debug, arce, 'arce' ) wire0 = geompy.MakeWire([arcr, arci, arcl]) cercle0 = geompy.MakeCircle(O, OZ, profondeur/4.0) #cercle0 = geompy.MakeRotation(cercle0, OZ, math.pi/2.0) cercle0 = geompy.MakeTranslationTwoPoints(cercle0, O, pi) - geompy.addToStudy( cercle0, 'cercle0' ) + geomPublish(initLog.debug, cercle0, 'cercle0' ) facetube0 = geompy.MakeFaceWires([cercle0], 1) facetubel = geompy.MakeRotation(facetube0, OY, -angle) facetuber = geompy.MakeRotation(facetube0, OY, angle) - geompy.addToStudy(facetubel , 'facetubel' ) - geompy.addToStudy( facetuber, 'facetuber' ) + geomPublish(initLog.debug,facetubel , 'facetubel' ) + geomPublish(initLog.debug, facetuber, 'facetuber' ) face0 = geompy.MakeFaceWires([arcl,arci, arce, arcr], 1) plan0 = geompy.MakePlane(O, OY, 10000) - geompy.addToStudy( face0, 'facefissOrig' ) + geomPublish(initLog.debug, face0, 'facefissOrig' ) facefiss = geompy.MakeRotation(face0, OY, alpha*math.pi/180.) - geompy.addToStudy( facefiss, 'facefissPlace' ) + geomPublish(initLog.always, facefiss, "facefissPlace", self.numeroCas ) centre = geompy.MakeRotation(pb, OY, alpha*math.pi/180.) - geompy.addToStudy( centre, 'centrefissPlace' ) + geomPublish(initLog.always, centre, "centrefissPlace", self.numeroCas ) arcr = geompy.MakeRotation(arcr, OY, alpha*math.pi/180.) arci = geompy.MakeRotation(arci, OY, alpha*math.pi/180.) arcl = geompy.MakeRotation(arcl, OY, alpha*math.pi/180.) wiretube = geompy.MakeRotation(wire0, OY, alpha*math.pi/180.) - geompy.addToStudy(wiretube, 'wiretubePlace' ) + geomPublish(initLog.always,wiretube, "wiretubePlace", self.numeroCas ) facetubel = geompy.MakeRotation(facetubel, OY, alpha*math.pi/180.) - geompy.addToStudy(facetubel, 'facetubeGauche' ) + geomPublish(initLog.debug,facetubel, 'facetubeGauche' ) facetuber = geompy.MakeRotation(facetuber, OY, alpha*math.pi/180.) - geompy.addToStudy(facetubel, 'facetubeDroit' ) + geomPublish(initLog.debug,facetubel, 'facetubeDroit' ) planfiss = geompy.MakeRotation(plan0, OY, alpha*math.pi/180.) - geompy.addToStudy(planfiss, 'planfissPlace' ) + geomPublish(initLog.always,planfiss, "planfissPlace", self.numeroCas ) pipefissl = geompy.MakePipe(facetubel, arcl) pipefissi = geompy.MakePipe(facetubel, arci) pipefissr = geompy.MakePipe(facetuber, arcr) pipefiss = geompy.MakePartition([pipefissl, pipefissi, pipefissr], [planfiss, wiretube], [], [], geompy.ShapeType["SOLID"], 0, [], 0) - geompy.addToStudy(pipefiss, 'pipefissPlace' ) + geomPublish(initLog.always,pipefiss, "pipefissPlace", self.numeroCas ) else: pass - coordsNoeudsFissure = genereMeshCalculZoneDefaut(facefiss, 5 ,10) + mailleur = self.mailleur2d3d() + coordsNoeudsFissure = genereMeshCalculZoneDefaut(facefiss, 5 ,10, mailleur, self.numeroCas) return [facefiss, centre, lgInfluence, coordsNoeudsFissure, wiretube, facetubel, facetuber, planfiss, pipefiss] # --------------------------------------------------------------------------- def setParamMaillageFissure(self): - self.maillageFissureParams = dict(nomRep = '.', + self.maillageFissureParams = dict(nomRep = os.curdir, nomFicSain = self.nomCas, - nomFicFissure = 'fissure_' + self.nomCas, + nomFicFissure = self.nomCas + "_fissure", nbsegExt = 5, nbsegGen = 25, nbsegRad = 5, @@ -472,26 +499,31 @@ class fissure_Coude(fissureGenerique): # --------------------------------------------------------------------------- def genereZoneDefaut(self, geometriesSaines, maillagesSains, shapesFissure, shapeFissureParams, maillageFissureParams): - elementsDefaut = creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure, shapeFissureParams, maillageFissureParams) + elementsDefaut = creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure, shapeFissureParams, maillageFissureParams, \ + self.numeroCas) return elementsDefaut # --------------------------------------------------------------------------- - def genereMaillageFissure(self, geometriesSaines, maillagesSains, - shapesFissure, shapeFissureParams, - maillageFissureParams, elementsDefaut, step): - maillageFissure = insereFissureLongue(geometriesSaines, maillagesSains, - shapesFissure, shapeFissureParams, - maillageFissureParams, elementsDefaut, step) + def genereMaillageFissure(self, geometriesSaines, maillagesSains, \ + shapesFissure, shapeFissureParams, \ + maillageFissureParams, elementsDefaut, step, \ + mailleur="MeshGems"): + + mailleur = self.mailleur2d3d() + maillageFissure = insereFissureLongue(shapesFissure, shapeFissureParams, \ + maillageFissureParams, elementsDefaut, \ + mailleur, self.numeroCas) return maillageFissure # --------------------------------------------------------------------------- def setReferencesMaillageFissure(self): - self.referencesMaillageFissure = dict(Entity_Node = 77491, - Entity_Quad_Edge = 1006, - Entity_Quad_Triangle = 2412, - Entity_Quad_Quadrangle = 6710, - Entity_Quad_Tetra = 20853, - Entity_Quad_Hexa = 8656, - Entity_Quad_Penta = 1176, - Entity_Quad_Pyramid = 1232) - + self.referencesMaillageFissure = dict( \ + Entity_Quad_Quadrangle = 6710, \ + Entity_Quad_Hexa = 8656, \ + Entity_Node = 76807, \ + Entity_Quad_Edge = 1006, \ + Entity_Quad_Triangle = 2342, \ + Entity_Quad_Tetra = 20392, \ + Entity_Quad_Pyramid = 1232, \ + Entity_Quad_Penta = 1176 \ + )