# -*- coding: utf-8 -*-
-# Copyright (C) 2014-2021 EDF R&D
+# Copyright (C) 2014-2023 EDF
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
from .geomsmesh import geomPublishInFather
def identifieEdgesPeau_a(edgesFissExtPipe, facePeau, facesPeauSorted, edgesPeauFondIn, \
- endsEdgeFond, facesPipePeau, edgeRadFacePipePeau, edgesListees):
+ endsEdgeFond, facesPipePeau, edgeRadFacePipePeau, edgesListees, \
+ nro_cas=None):
"""Identification précise des edges et disques des faces de peau selon index extremité fissure"""
logging.info('start')
+ logging.info("Traitement des arêtes de '%s'", facePeau.GetName())
for face in facesPeauSorted[:-1]: # la ou les faces débouchantes, pas la grande face de peau
logging.debug("examen face debouchante circulaire")
j_aux_0 = j_aux
break
sharedVertices = geompy.GetSharedShapesMulti([face, edgesPeauFondIn[j_aux_0]], geompy.ShapeType["VERTEX"])
- nameFace = "facePipePeau{}".format(i_aux)
- nameVert = "endEdgeFond{}".format(i_aux)
- nameEdge = "edgeRadFacePipePeau{}".format(i_aux)
+ nameFace = "facePipePeau_{}".format(i_aux)
+ nameVert = "endEdgeFond_{}".format(i_aux)
facesPipePeau[i_aux] = face
endsEdgeFond[i_aux] = sharedVertices[0]
- geomPublish(initLog.debug, face, nameFace)
- geomPublish(initLog.debug, sharedVertices[0], nameVert)
+ geomPublish(initLog.debug, face, nameFace, nro_cas)
+ geomPublish(initLog.debug, sharedVertices[0], nameVert, nro_cas)
edgesFace = geompy.ExtractShapes(face, geompy.ShapeType["EDGE"], True)
for edge in edgesFace:
if geompy.MinDistance(edge, sharedVertices[0]) < 1e-3:
edgeRadFacePipePeau[i_aux] = edge
- geomPublish(initLog.debug, edge, nameEdge)
+ nameEdge = "edgeRadFacePipePeau_{}".format(i_aux)
+ geomPublish(initLog.debug, edge, nameEdge, nro_cas)
break
- # --- edges circulaires de la face de peau et points de jonction de la face externe de fissure
- logging.debug("facesPipePeau: %s", facesPipePeau)
- edgesCircPeau = [None for _ in range(len(facesPipePeau))]
- verticesCircPeau = [None for _ in range(len(facesPipePeau))]
+ # --- edges elliptiques de la face de peau et points de jonction de la face externe de fissure
+ logging.info('Nombre de faces : len(facesPipePeau) = %d', len(facesPipePeau))
+ edgesCircPeau = list()
+ verticesCircPeau = list()
for i_aux,fcirc in enumerate(facesPipePeau):
+ # Arêtes
edges = geompy.GetSharedShapesMulti([facePeau, fcirc], geompy.ShapeType["EDGE"])
- grpEdgesCirc = geompy.CreateGroup(facePeau, geompy.ShapeType["EDGE"])
- geompy.UnionList(grpEdgesCirc, edges)
- edgesCircPeau[i_aux] = grpEdgesCirc
- name = "edgeCirc{}".format(i_aux)
- geomPublishInFather(initLog.debug, facePeau, grpEdgesCirc, name)
+ groupe = geompy.CreateGroup(facePeau, geompy.ShapeType["EDGE"])
+ geompy.UnionList(groupe, edges)
+ geomPublishInFather(initLog.always, facePeau, groupe, "edgeCirc_{}".format(i_aux))
+ edgesCircPeau.append(groupe)
edgesListees = edgesListees + edges
+ # Sommets
vertices = geompy.GetSharedShapesMulti([facePeau, fcirc], geompy.ShapeType["VERTEX"])
- grpVertCircPeau = geompy.CreateGroup(facePeau, geompy.ShapeType["VERTEX"])
- geompy.UnionList(grpVertCircPeau, vertices)
- verticesCircPeau[i_aux] = grpVertCircPeau
- name = "pointEdgeCirc{}".format(i_aux)
- geomPublishInFather(initLog.debug, facePeau, grpVertCircPeau, name)
+ groupe = geompy.CreateGroup(facePeau, geompy.ShapeType["VERTEX"])
+ geompy.UnionList(groupe, vertices)
+ geomPublishInFather(initLog.info, facePeau, groupe, "point(s)EdgeCirc_{}".format(i_aux))
+ verticesCircPeau.append(groupe)
+
+ logging.info("==> Nombre de groupes d'arêtes : len(edgesCircPeau) = %d", len(edgesCircPeau))
+ logging.info("==> Nombre de groupes de sommets : len(verticesCircPeau) = %d", len(verticesCircPeau))
return edgesCircPeau, verticesCircPeau