]> SALOME platform Git repositories - modules/smesh.git/blobdiff - src/Tools/blocFissure/gmu/creeZoneDefautDansObjetSain.py
Salome HOME
SUppression de step dans construitFissureGenerale
[modules/smesh.git] / src / Tools / blocFissure / gmu / creeZoneDefautDansObjetSain.py
index 0e87d70887aaeb0ff659bd8b271d03b87b829f2e..d3ee3143786bf6eff02812df60fb937237fb1211 100644 (file)
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-# Copyright (C) 2014-2020  EDF R&D
+# 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
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 #
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 #
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+"""TODO: a compléter"""
 
 import os
 
 import logging
 
 import os
 
 import logging
-from .geomsmesh import smesh
 import SMESH
 import SALOMEDS
 
 import SMESH
 import SALOMEDS
 
+from .geomsmesh import smesh
+
 from .creeZoneDefautMaillage import creeZoneDefautMaillage
 from .peauInterne import peauInterne
 from .quadranglesToShapeNoCorner import quadranglesToShapeNoCorner
 from .creeZoneDefautFilling import creeZoneDefautFilling
 from .creeZoneDefautGeom import creeZoneDefautGeom
 from .getCentreFondFiss import getCentreFondFiss
 from .creeZoneDefautMaillage import creeZoneDefautMaillage
 from .peauInterne import peauInterne
 from .quadranglesToShapeNoCorner import quadranglesToShapeNoCorner
 from .creeZoneDefautFilling import creeZoneDefautFilling
 from .creeZoneDefautGeom import creeZoneDefautGeom
 from .getCentreFondFiss import getCentreFondFiss
+from .putName import putName
 
 
-# -----------------------------------------------------------------------------
-# ---
-
-def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure,
-                                shapeFissureParams, maillageFissureParams):
+def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure, \
+                                shapeFissureParams, maillageFissureParams, \
+                                nro_cas=None):
   """
   #TODO: a compléter
   """
   """
   #TODO: a compléter
   """
@@ -65,11 +66,10 @@ def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure,
   nomFicSain          = maillageFissureParams['nomFicSain']
 
   fichierMaillageSain = os.path.join (nomRep , '{}.med'.format(nomFicSain))
   nomFicSain          = maillageFissureParams['nomFicSain']
 
   fichierMaillageSain = os.path.join (nomRep , '{}.med'.format(nomFicSain))
-  
+
   # --- centre de fond de fissure et tangente
   # --- centre de fond de fissure et tangente
-  
+
   edgeFondExt, centreFondFiss, tgtCentre = getCentreFondFiss(shapesFissure)
   edgeFondExt, centreFondFiss, tgtCentre = getCentreFondFiss(shapesFissure)
-  
 
   # --- zone de défaut
   nomZones = "zoneDefaut"
 
   # --- zone de défaut
   nomZones = "zoneDefaut"
@@ -80,7 +80,8 @@ def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure,
   maillageSain.ExportMED(fichierMaillageSain)
   logging.debug("fichier maillage sain %s", fichierMaillageSain)
   [maillageSain, internalBoundary, zoneDefaut, zoneDefaut_skin, zoneDefaut_internalFaces, zoneDefaut_internalEdges] = \
   maillageSain.ExportMED(fichierMaillageSain)
   logging.debug("fichier maillage sain %s", fichierMaillageSain)
   [maillageSain, internalBoundary, zoneDefaut, zoneDefaut_skin, zoneDefaut_internalFaces, zoneDefaut_internalEdges] = \
-    peauInterne(fichierMaillageSain, shapeDefaut, nomZones)
+    peauInterne(fichierMaillageSain, shapeDefaut, nomZones, \
+                nro_cas)
 
   facesDefaut = list()
   centresDefaut = list()
 
   facesDefaut = list()
   centresDefaut = list()
@@ -89,9 +90,10 @@ def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure,
   isPlane = False
   if isHexa and not isPlane:
     meshQuad =  smesh.CopyMesh( zoneDefaut_skin, 'meshQuad', 0, 0)
   isPlane = False
   if isHexa and not isPlane:
     meshQuad =  smesh.CopyMesh( zoneDefaut_skin, 'meshQuad', 0, 0)
-    
-    fillings, noeuds_bords, bordsPartages, fillconts, idFilToCont = quadranglesToShapeNoCorner(meshQuad, shapeFissureParams, centreFondFiss)
-    
+    putName(meshQuad, "meshQuad", i_pref=nro_cas)
+
+    fillings, _, bordsPartages, fillconts, idFilToCont = quadranglesToShapeNoCorner(meshQuad, shapeFissureParams, centreFondFiss)
+
     for filling in fillings:
       [faceDefaut, centreDefaut, normalDefaut, extrusionDefaut] = \
         creeZoneDefautFilling(filling, shapeDefaut, lgExtrusion)
     for filling in fillings:
       [faceDefaut, centreDefaut, normalDefaut, extrusionDefaut] = \
         creeZoneDefautFilling(filling, shapeDefaut, lgExtrusion)
@@ -101,14 +103,15 @@ def creeZoneDefautDansObjetSain(geometriesSaines, maillagesSains, shapesFissure,
       extrusionsDefaut.append(extrusionDefaut)
   else:
     [facesDefaut, centreDefaut, normalDefaut, extrusionDefaut] = \
       extrusionsDefaut.append(extrusionDefaut)
   else:
     [facesDefaut, centreDefaut, normalDefaut, extrusionDefaut] = \
-      creeZoneDefautGeom( geometrieSaine, shapeDefaut, origShapes, verticesShapes, dmoyen, lgExtrusion)
+      creeZoneDefautGeom( geometrieSaine, shapeDefaut, origShapes, verticesShapes, lgExtrusion)
     bordsPartages = list()
     bordsPartages = list()
-    for face in facesDefaut:
+    for _ in facesDefaut:
       bordsPartages.append([None,None]) # TODO : traitement des arêtes vives ?
     fillconts = facesDefaut
     idFilToCont = list(range(len(facesDefaut)))
 
       bordsPartages.append([None,None]) # TODO : traitement des arêtes vives ?
     fillconts = facesDefaut
     idFilToCont = list(range(len(facesDefaut)))
 
-  return [facesDefaut, centresDefaut, normalsDefaut, extrusionsDefaut, dmoyen, bordsPartages, fillconts, idFilToCont,
-          maillageSain, internalBoundary, zoneDefaut, zoneDefaut_skin, zoneDefaut_internalFaces, zoneDefaut_internalEdges,
+  return [facesDefaut, centresDefaut, normalsDefaut, extrusionsDefaut, \
+          dmoyen, bordsPartages, fillconts, idFilToCont, \
+          maillageSain, internalBoundary, \
+          zoneDefaut, zoneDefaut_skin, zoneDefaut_internalFaces, zoneDefaut_internalEdges, \
           edgeFondExt, centreFondFiss, tgtCentre]
           edgeFondExt, centreFondFiss, tgtCentre]
-