Salome HOME
Modif V6_4_°
[tools/eficas.git] / Aster / Cata / cataSTA74 / Macro / pre_gmsh_ops.py
1 # -*- coding: utf-8 -*-
2 #@ MODIF pre_gmsh_ops Macro  DATE 11/06/2002   AUTEUR DURAND C.DURAND 
3 #            CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2002  EDF R&D                  WWW.CODE-ASTER.ORG
6 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY  
7 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY  
8 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR     
9 # (AT YOUR OPTION) ANY LATER VERSION.                                                  
10 #                                                                       
11 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT   
12 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF            
13 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU      
14 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.                              
15 #                                                                       
16 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE     
17 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,         
18 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.        
19 # ======================================================================
20
21 def pre_gmsh_ops(self,UNITE_MAILLAGE,UNITE_GMSH,MODI_QUAD,**args):
22   """
23      Ecriture de la macro PRE_GMSH
24   """
25   import os
26   from Macro.ajout_quad_gmsh import ajout_quad_gmsh
27   ier=0
28
29   PRE_GMSH_LECT =self.get_cmd('PRE_GMSH_LECT')
30
31   # La macro compte pour 1 dans la numerotation des commandes
32   self.icmd=1
33
34   if MODI_QUAD=='OUI':
35      cur_dir=os.getcwd()
36      unit  = str(UNITE_GMSH)
37      nomFichierGmsh = cur_dir+'/fort.'+unit
38      nomFichierMail = cur_dir+'/sortie'
39
40 #    récupération du fichier .msh complet mis dans la string 'texte'
41
42      fproc=open(nomFichierGmsh,'r')
43      texte=fproc.read()
44      fproc.close()
45
46      resu=ajout_quad_gmsh(texte)
47      if not resu:
48         ier=ier+1
49         self.cr.fatal("Erreur dans la methode python de transformation mailles lineaires-quadratiques")
50         return ier
51
52      fsort=open(nomFichierMail,'w')
53      fsort.write(resu)
54      fsort.close()
55      os.system('cp '+nomFichierMail+' '+nomFichierGmsh)
56
57   PRE_GMSH_LECT(UNITE_MAILLAGE = UNITE_MAILLAGE,
58                 UNITE_GMSH     = UNITE_GMSH     )
59
60   return ier
61