Salome HOME
Merge branch 'master' of https://codev-tuleap.cea.fr/plugins/git/salome/smesh
[modules/smesh.git] / src / Tools / blocFissure / gmu / identifieElementsGeometriquesPeau.py
index 2fdd9251aafbe728c53cb9e02c01c51e82079527..3e32edb8c943ee7b1308929c5ab97d13c4558667 100644 (file)
@@ -1,4 +1,23 @@
 # -*- 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
+#
+"""Identification des éléments géométriques de la face de peau"""
 
 import logging
 
@@ -8,51 +27,54 @@ from .trouveEdgesFissPeau import trouveEdgesFissPeau
 from .identifieFacesPeau import identifieFacesPeau
 from .identifieEdgesPeau import identifieEdgesPeau
 
-def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss,
-                                      edgesFondFiss, wireFondFiss, aretesVivesC,
-                                      facesDefaut, centreFondFiss, rayonPipe,
-                                      aretesVivesCoupees):
-  """
-  """
+def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, \
+                                      edgesPipeFiss, edgesFondFiss, wireFondFiss, aretesVivesC, \
+                                      facesDefaut, centreFondFiss, rayonPipe, aretesVivesCoupees, \
+                                      nro_cas=None):
+  """Identification des éléments géométriques de la face de peau"""
   logging.info('start')
   fillingFaceExterne = facesDefaut[ifil]
 
   logging.debug("traitement partitionPeauFissFond %s", ifil)
-  
+
   # --- identification edges fond de fissure, edges pipe sur la face de fissure, edges prolongées
   #     edges internes communes pipe et fissure, points communs edges fissure peau et edges circulaires
-  
-  (edgesPipeIn, verticesPipePeau, edgesFondIn, facesInside, facesOnside) = identifieElementsFissure(ifil, facesDefaut, partitionPeauFissFond,
-                                                                                                    edgesPipeFiss, edgesFondFiss, aretesVivesC,
-                                                                                                    fillingFaceExterne, centreFondFiss)
-  
+
+  (edgesPipeIn, verticesPipePeau, edgesFondIn, facesInside, facesOnside) = \
+                           identifieElementsFissure(ifil, facesDefaut, partitionPeauFissFond, \
+                                                    edgesPipeFiss, edgesFondFiss, aretesVivesC, \
+                                                    fillingFaceExterne, centreFondFiss)
+
   # --- elements débouchants (intersection pipe et peau), indexés selon les edges du fond de fissure (edgesFondIn)
-  
+
   (verticesEdgesFondIn, pipexts, cercles,
-   facesFissExt, edgesFissExtPeau, edgesFissExtPipe) = identifieElementsDebouchants(ifil, facesDefaut, partitionPeauFissFond,
-                                                                                    edgesFondIn, edgesFondFiss, wireFondFiss,
-                                                                                    aretesVivesC, fillingFaceExterne,
-                                                                                    edgesPipeIn, verticesPipePeau, rayonPipe,
+   facesFissExt, edgesFissExtPeau, edgesFissExtPipe) = identifieElementsDebouchants(ifil, facesDefaut, partitionPeauFissFond, \
+                                                                                    edgesFondIn, edgesFondFiss, wireFondFiss, \
+                                                                                    aretesVivesC, fillingFaceExterne, \
+                                                                                    edgesPipeIn, verticesPipePeau, rayonPipe, \
                                                                                     facesInside, facesOnside)
 
   # --- pour les faces de peau sans extremité débouchante de fissure, il faut recenser les edges de fissure sur la face de peau
 
   if len(verticesPipePeau) == 0: # aucune extrémité du pipe sur cette face de peau
     edgesFissExtPeau = trouveEdgesFissPeau(facesInside, facesOnside, edgesPipeIn, edgesFondIn, partitionPeauFissFond, edgesFissExtPeau)
-    
+
   # --- inventaire des faces de peau : face de peau percée du pipe, extrémités du pipe
-  
-  (facePeau, facesPeauSorted, edgesPeauFondIn) = identifieFacesPeau(ifil, verticesPipePeau, facesOnside, wireFondFiss,
-                                                                    verticesEdgesFondIn, pipexts, cercles,
-                                                                    fillingFaceExterne, centreFondFiss)
-  
+
+  (facePeau, facesPeauSorted, edgesPeauFondIn) = identifieFacesPeau(ifil, verticesPipePeau, facesOnside, wireFondFiss, \
+                                                                    verticesEdgesFondIn, pipexts, cercles, \
+                                                                    fillingFaceExterne, centreFondFiss, \
+                                                                    nro_cas)
+
   # --- identification précise des edges et disques des faces de peau selon index extremité fissure
-  
-  (endsEdgeFond, facesPipePeau, edgeRadFacePipePeau,
-   edgesCircPeau, verticesCircPeau, groupEdgesBordPeau,
-   bordsVifs, edgesFissurePeau, aretesVivesCoupees) = identifieEdgesPeau(edgesFissExtPipe, verticesPipePeau, facePeau, facesPeauSorted,
-                                                                         edgesPeauFondIn, fillingFaceExterne, aretesVivesC, aretesVivesCoupees)
-  
+
+  (endsEdgeFond, facesPipePeau, edgeRadFacePipePeau, \
+  edgesCircPeau, groupEdgesBordPeau, \
+  bordsVifs, edgesFissurePeau, aretesVivesCoupees) = \
+                                              identifieEdgesPeau(edgesFissExtPipe, verticesPipePeau, facePeau, facesPeauSorted, \
+                                                                edgesPeauFondIn, fillingFaceExterne, aretesVivesC, aretesVivesCoupees, \
+                                                                nro_cas)
+
   dataPPFF = dict(endsEdgeFond        = endsEdgeFond,        # pour chaque face [points edge fond de fissure aux débouchés du pipe]
                   facesPipePeau       = facesPipePeau,       # pour chaque face [faces du pipe débouchantes]
                   edgeRadFacePipePeau = edgeRadFacePipePeau, # pour chaque face [edge radiale des faces du pipe débouchantes ]
@@ -61,12 +83,10 @@ def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss
                   edgesFissExtPipe    = edgesFissExtPipe,    # pour chaque face [edge commun au pipe des faces de fissure externes]
                   facePeau            = facePeau,            # pour chaque face : la face de peau finale a mailler (percee des faces débouchantes)
                   edgesCircPeau       = edgesCircPeau,       # pour chaque face de peau : [groupe subshapes edges circulaires aux débouchés du pipe]
-                  verticesCircPeau    = verticesCircPeau,    # pour chaque face de peau : [groupe subshapes points sur edges circulaires aux débouchés du pipe]
                   groupEdgesBordPeau  = groupEdgesBordPeau,  # pour chaque face de peau : groupe subshape des edges aux bords liés à la partie saine
                   bordsVifs           = bordsVifs,           # pour chaque face de peau : groupe subshape des edges aux bords correspondant à des arêtes vives
                   edgesFissurePeau    = edgesFissurePeau,    # pour chaque face de peau : [subshape edge en peau des faces de fissure externes]
                   verticesPipePeau    = verticesPipePeau     # pour chaque face de peau : [point commun edFissPeau edCircPeau]
-                  )  
+                 )
 
   return dataPPFF, aretesVivesCoupees
-