Salome HOME
projects
/
modules
/
smesh.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Prise en compte de la courbure de la face à mailler
[modules/smesh.git]
/
src
/
Tools
/
blocFissure
/
gmu
/
genereMeshCalculZoneDefaut.py
diff --git
a/src/Tools/blocFissure/gmu/genereMeshCalculZoneDefaut.py
b/src/Tools/blocFissure/gmu/genereMeshCalculZoneDefaut.py
index 3a423775ac36ff2b257dc63cda8a53d2d58b4475..3ab7cf8149b9c362c4f9e12926b19f46e3dccf9e 100644
(file)
--- a/
src/Tools/blocFissure/gmu/genereMeshCalculZoneDefaut.py
+++ b/
src/Tools/blocFissure/gmu/genereMeshCalculZoneDefaut.py
@@
-1,5
+1,5
@@
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
-# Copyright (C) 2014-202
0
EDF R&D
+# Copyright (C) 2014-202
1
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
@@
-17,16
+17,18
@@
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+"""Maillage face de fissure pour identification zone de défaut"""
import logging
import logging
-from .geomsmesh import smesh
+
from salome.smesh import smeshBuilder
from salome.smesh import smeshBuilder
-# -----------------------------------------------------------------------------
-# --- maillage face de fissure pour identification zone de defaut
+from .geomsmesh import smesh
+
+from .putName import putName
def genereMeshCalculZoneDefaut(facefiss, minSize, maxSize, \
def genereMeshCalculZoneDefaut(facefiss, minSize, maxSize, \
- mailleur="MeshGems"):
+ mailleur="MeshGems"
, nro_cas=None
):
"""Maillage de l'objet géométrique 'facefiss'
. Avec l'algorithme MG_CADSurf :
"""Maillage de l'objet géométrique 'facefiss'
. Avec l'algorithme MG_CADSurf :
@@
-46,12
+48,16
@@
def genereMeshCalculZoneDefaut(facefiss, minSize, maxSize, \
-SetQuadAllowed = permission quadrangle dans maillage triangle
-On récupère les coordonnées de chaque noeud de la fissure qu'on stocke
-SetQuadAllowed = permission quadrangle dans maillage triangle
-On récupère les coordonnées de chaque noeud de la fissure qu'on stocke
- dans une liste sous la forme : [X0, Y0, Z0, ..., Xn, Yn, Zn]"""
+ dans une liste sous la forme : [X0, Y0, Z0, ..., Xn, Yn, Zn]
+ """
logging.info('start')
logging.info('start')
+ logging.info("Maillage avec %s pour le cas n°%s", mailleur, nro_cas)
meshFissure = smesh.Mesh(facefiss)
meshFissure = smesh.Mesh(facefiss)
- text = "Maillage de '{}' avec {}".format(facefiss.GetName(),mailleur)
+ putName(meshFissure, "facefiss", i_pref=nro_cas)
+
+ text = "Maillage de '{}'".format(facefiss.GetName())
logging.info(text)
if ( mailleur == "MeshGems"):
algo2d = meshFissure.Triangle(algo=smeshBuilder.MG_CADSurf)
logging.info(text)
if ( mailleur == "MeshGems"):
algo2d = meshFissure.Triangle(algo=smeshBuilder.MG_CADSurf)
@@
-69,9
+75,12
@@
def genereMeshCalculZoneDefaut(facefiss, minSize, maxSize, \
hypo2d.SetOptimize( 1 )
hypo2d.SetFineness( 2 )
hypo2d.SetMinSize( minSize )
hypo2d.SetOptimize( 1 )
hypo2d.SetFineness( 2 )
hypo2d.SetMinSize( minSize )
+ hypo2d.SetChordalErrorEnabled (True)
+ hypo2d.SetChordalError( maxSize*0.25 )
+ hypo2d.SetUseSurfaceCurvature (True)
hypo2d.SetQuadAllowed( 0 )
hypo2d.SetQuadAllowed( 0 )
-
smesh.SetName(algo2d, "algo2d_zoneFiss"
)
-
smesh.SetName(hypo2d, "hypo1d_zoneFiss"
)
+
putName(algo2d, "{}_2d_zoneFiss".format(mailleur), i_pref=nro_cas
)
+
putName(hypo2d, "hypo1d_zoneFiss", i_pref=nro_cas
)
is_done = meshFissure.Compute()
text = "meshFissure.Compute"
is_done = meshFissure.Compute()
text = "meshFissure.Compute"