X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FTools%2FblocFissure%2Fgmu%2FidentifieElementsGeometriquesPeau.py;h=f5a7e255d7a62ebf54210cb4a66b90d4f88a6138;hp=c60682c513b17832f08b1f6fc5340602f08937bf;hb=b24a2d1b7692bdb21cf037b026e0273ba547cef4;hpb=5482b99d07dd144fd5be299e722f39a81de3b5be diff --git a/src/Tools/blocFissure/gmu/identifieElementsGeometriquesPeau.py b/src/Tools/blocFissure/gmu/identifieElementsGeometriquesPeau.py index c60682c51..f5a7e255d 100644 --- a/src/Tools/blocFissure/gmu/identifieElementsGeometriquesPeau.py +++ b/src/Tools/blocFissure/gmu/identifieElementsGeometriquesPeau.py @@ -1,16 +1,34 @@ # -*- 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 +# import logging -from identifieElementsFissure import identifieElementsFissure -from identifieElementsDebouchants import identifieElementsDebouchants -from trouveEdgesFissPeau import trouveEdgesFissPeau -from identifieFacesPeau import identifieFacesPeau -from identifieEdgesPeau import identifieEdgesPeau +from .identifieElementsFissure import identifieElementsFissure +from .identifieElementsDebouchants import identifieElementsDebouchants +from .trouveEdgesFissPeau import trouveEdgesFissPeau +from .identifieFacesPeau import identifieFacesPeau +from .identifieEdgesPeau import identifieEdgesPeau -def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss, - edgesFondFiss, wireFondFiss, aretesVivesC, - facesDefaut, centreFondFiss, rayonPipe, +def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss, \ + edgesFondFiss, wireFondFiss, aretesVivesC, \ + facesDefaut, centreFondFiss, rayonPipe, \ aretesVivesCoupees): """ """ @@ -18,16 +36,16 @@ def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss 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) - + # --- 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, @@ -39,20 +57,20 @@ def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss 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) - + # --- 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) - + 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 ] @@ -66,7 +84,7 @@ def identifieElementsGeometriquesPeau(ifil, partitionPeauFissFond, edgesPipeFiss 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 - +