mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2024-12-25 17:00:34 +05:00
Simplification
This commit is contained in:
parent
403a6925d3
commit
3f3ca40e45
@ -89,7 +89,6 @@ SET(plugin_SCRIPTS
|
||||
initEtude.py
|
||||
initLog.py
|
||||
insereFissureElliptique.py
|
||||
insereFissureGenerale.py
|
||||
insereFissureLongue_a.py
|
||||
insereFissureLongue_b.py
|
||||
insereFissureLongue_c.py
|
||||
|
@ -25,9 +25,12 @@ import math
|
||||
from .geomsmesh import geompy
|
||||
from .geomsmesh import smesh
|
||||
|
||||
from .putName import putName
|
||||
|
||||
def calculePointsAxiauxPipe(edgesFondFiss, edgesIdByOrientation, facesDefaut,
|
||||
centreFondFiss, wireFondFiss, wirePipeFiss,
|
||||
lenSegPipe, rayonPipe, nbsegCercle, nbsegRad):
|
||||
lenSegPipe, rayonPipe, nbsegCercle, nbsegRad, \
|
||||
nro_cas=-1):
|
||||
"""Préparation maillage du pipe :
|
||||
|
||||
- détections des points a respecter : jonction des edges/faces constituant
|
||||
@ -37,6 +40,7 @@ def calculePointsAxiauxPipe(edgesFondFiss, edgesIdByOrientation, facesDefaut,
|
||||
"""
|
||||
|
||||
logging.info('start')
|
||||
logging.info("Pour le cas n°%d", nro_cas)
|
||||
|
||||
# --- option de maillage selon le rayon de courbure du fond de fissure
|
||||
lenEdgeFondExt = 0
|
||||
@ -60,7 +64,10 @@ def calculePointsAxiauxPipe(edgesFondFiss, edgesIdByOrientation, facesDefaut,
|
||||
|
||||
meshFondExt = smesh.Mesh(wireFondFiss)
|
||||
algo1d = meshFondExt.Segment()
|
||||
_ = algo1d.Adaptive(lgmin, lgmax, deflexion) # a ajuster selon la profondeur de la fissure
|
||||
hypo1d = algo1d.Adaptive(lgmin, lgmax, deflexion) # a ajuster selon la profondeur de la fissure
|
||||
putName(algo1d.GetSubMesh(), "wireFondFiss", i_pref=nro_cas)
|
||||
putName(algo1d, "algo1d_wireFondFiss", i_pref=nro_cas)
|
||||
putName(hypo1d, "hypo1d_wireFondFiss", i_pref=nro_cas)
|
||||
|
||||
is_done = meshFondExt.Compute()
|
||||
text = "calculePointsAxiauxPipe meshFondExt.Compute"
|
||||
|
@ -59,8 +59,7 @@ def construitFissureGenerale(shapesFissure, shapeFissureParams, \
|
||||
step=-1, mailleur="MeshGems", nro_cas=-1):
|
||||
"""procédure complète fissure générale"""
|
||||
logging.info('start')
|
||||
logging.info("Usage du mailleur %s", mailleur)
|
||||
logging.info("pour le cas %d", nro_cas)
|
||||
logging.info("Usage du mailleur %s pour le cas n°%d", mailleur, nro_cas)
|
||||
|
||||
shapeDefaut = shapesFissure[0] # faces de fissure, débordant
|
||||
|
||||
@ -150,9 +149,10 @@ def construitFissureGenerale(shapesFissure, shapeFissureParams, \
|
||||
# - points sur les edges de fond de fissure et edges pipe/face fissure,
|
||||
# - vecteurs tangents au fond de fissure (normal au disque maillé)
|
||||
|
||||
(centres, gptsdisks, raydisks) = calculePointsAxiauxPipe(edgesFondFiss, edgesIdByOrientation, facesDefaut, \
|
||||
centreFondFiss, wireFondFiss, wirePipeFiss, \
|
||||
lenSegPipe, rayonPipe, nbsegCercle, nbsegRad)
|
||||
(centres, gptsdisks, raydisks) = calculePointsAxiauxPipe (edgesFondFiss, edgesIdByOrientation, facesDefaut, \
|
||||
centreFondFiss, wireFondFiss, wirePipeFiss, \
|
||||
lenSegPipe, rayonPipe, nbsegCercle, nbsegRad, \
|
||||
nro_cas)
|
||||
|
||||
# --- recherche des points en trop (externes au volume à remailler)
|
||||
# - on associe chaque extrémité du pipe à une face filling
|
||||
@ -179,11 +179,14 @@ def construitFissureGenerale(shapesFissure, shapeFissureParams, \
|
||||
|
||||
# --- maillage effectif du pipe
|
||||
|
||||
(meshPipe, meshPipeGroups, edgesCircPipeGroup) = construitMaillagePipe(gptsdisks, idisklim, nbsegCercle, nbsegRad)
|
||||
(meshPipe, meshPipeGroups, edgesCircPipeGroup) = \
|
||||
construitMaillagePipe(gptsdisks, idisklim, nbsegCercle, nbsegRad)
|
||||
|
||||
# --- edges de bord, faces défaut à respecter
|
||||
|
||||
(internalBoundary, bordsLibres, grpAretesVives) = mailleAretesEtJonction(internalBoundary, aretesVivesCoupees, lgAretesVives)
|
||||
(internalBoundary, bordsLibres, grpAretesVives) = \
|
||||
mailleAretesEtJonction(internalBoundary, aretesVivesCoupees, lgAretesVives, \
|
||||
nro_cas)
|
||||
|
||||
# --- maillage faces de fissure
|
||||
|
||||
@ -191,7 +194,7 @@ def construitFissureGenerale(shapesFissure, shapeFissureParams, \
|
||||
mailleFacesFissure(faceFissureExterne, \
|
||||
edgesPipeFissureExterneC, edgesPeauFissureExterneC, \
|
||||
meshPipeGroups, areteFaceFissure, rayonPipe, nbsegRad, \
|
||||
mailleur)
|
||||
mailleur, nro_cas)
|
||||
|
||||
# --- maillage faces de peau
|
||||
|
||||
|
@ -46,7 +46,7 @@ def construitFissureGenerale_c(maillageSain, meshBoiteDefaut, \
|
||||
mailleur="MeshGems", nro_cas=-1):
|
||||
"""construction de la fissure générale - maillage"""
|
||||
logging.info('start')
|
||||
logging.info("Usage du mailleur %s", mailleur)
|
||||
logging.info("Usage du mailleur %s pour le cas n°%d", mailleur, nro_cas)
|
||||
|
||||
nomRep = maillageFissureParams['nomRep']
|
||||
nomFicSain = maillageFissureParams['nomFicSain']
|
||||
|
@ -41,6 +41,7 @@ def fusionMaillageDefaut(maillageSain, maillageDefautCible, maillageInterneCible
|
||||
"""Groupe de quadrangles de face transformé en face géométrique par filling"""
|
||||
|
||||
logging.info("start")
|
||||
logging.info("Pour le cas n°%d", nro_cas)
|
||||
|
||||
facesNonCoupees = list()
|
||||
facesCoupees = list()
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -32,6 +32,7 @@ def mailleAretesEtJonction (internalBoundary, aretesVivesCoupees, lgAretesVives,
|
||||
nro_cas=-1):
|
||||
"""edges de bord, faces défaut à respecter"""
|
||||
logging.info('start')
|
||||
logging.info("Pour le cas n°%d", nro_cas)
|
||||
|
||||
_ = smesh.CreateFilterManager()
|
||||
_, internalBoundary, _NoneGroup = internalBoundary.MakeBoundaryElements( SMESH.BND_1DFROM2D, '', '', 0, [ ])
|
||||
|
@ -34,6 +34,7 @@ def mailleFacesFissure(faceFissureExterne, \
|
||||
mailleur="MeshGems", nro_cas=-1):
|
||||
"""maillage faces de fissure"""
|
||||
logging.info('start')
|
||||
logging.info("Maillage avec %s pour le cas n°%d", mailleur, nro_cas)
|
||||
|
||||
meshFaceFiss = smesh.Mesh(faceFissureExterne)
|
||||
logging.info("Maillage avec %s", mailleur)
|
||||
|
@ -40,7 +40,8 @@ def mailleFacesPeau(partitionsPeauFissFond, idFillingFromBout, facesDefaut, \
|
||||
mailleur="MeshGems", nro_cas=-1):
|
||||
"""maillage faces de peau"""
|
||||
logging.info('start')
|
||||
logging.info(mailleur+" pour le cas n° %d"%nro_cas)
|
||||
logging.info("Maillage avec %s pour le cas n°%d", mailleur, nro_cas)
|
||||
|
||||
nbFacesFilling = len(partitionsPeauFissFond)
|
||||
boutFromIfil = [None for _ in range(nbFacesFilling)]
|
||||
if idFillingFromBout[0] != idFillingFromBout[1]: # repérage des extremites du pipe quand elles débouchent sur des faces différentes
|
||||
|
Loading…
Reference in New Issue
Block a user