2 # -*- coding: iso-8859-1 -*-
6 FichierEntete='templatesHtml/entete.html'
7 FichierMailleur='templatesHtml/mailleur.html'
8 FichierJob='templatesHtml/job.html'
9 FichierTableau='templatesHtml/tableau.html'
10 FichierLigne='templatesHtml/ligne.html'
11 FichierFinTableau='templatesHtml/tableauFin.html'
13 def compte_all(texte, subString):
17 trouve = texte.find(subString, start)
18 if trouve == -1: return compte
20 start = trouve + len(subString)
22 def FormateTexte(texte,dico):
23 for clef in dico.keys():
24 texteARemplacer="%"+str(clef)+"%"
25 remplacement=dico[clef]
26 if texte.find(texteARemplacer) < 0 :
27 print "impossible de remplacer ",texteARemplacer, "Pas d'occurence"
30 if compte_all(texte,texteARemplacer) != 1 :
31 print "impossible de remplacer ",texteARemplacer, "trop d'occurences"
33 remplacement=str(remplacement)
34 texte=texte.replace(texteARemplacer,remplacement)
37 def FormateLigne(texte,nb):
39 remplacement=str(nb)+"%"
40 texte=texte.replace(texteARemplacer,remplacement)
44 texteIni=open(FichierEntete).read()
45 texteRetour=FormateTexte(texteIni,dico)
48 def CreeMailleur(dico):
49 texteIni=open(FichierMailleur).read()
50 texteRetour=FormateTexte(texteIni,dico)
54 texte=open(FichierJob).read()
55 texteRetour=FormateTexte(texte,dico)
58 def CreeMailleOuGroupe(dico,nb):
59 texteIni=open(FichierTableau).read()
61 texteLigneIni=open(FichierLigne).read()
62 for i in range (2,nb+1) :
63 texteLigne=FormateLigne(texteLigneIni,i)
64 texteIni=texteIni+texteLigne
66 texteRetour=FormateTexte(texteIni,dico)
68 finTexte=open(FichierFinTableau).read()
69 texteFinal=texteRetour+finTexte
74 def EcritFichier(texte,filename):
80 if __name__=='__main__':
82 dicoEntete["VERSIONTEST"]="V7.2"
83 dicoEntete["VERSIONREF"]="V6.6"
84 dicoEntete["MACHINE"]="dsp111002"
85 monTexte=CreeEntete(dicoEntete)
88 dicoMailleur["MAILLEUR"]="GHS3D"
89 texteMailleur=CreeMailleur(dicoMailleur)
90 monTexte+=texteMailleur
94 dicoJob["NOM"]="MASSIF"
96 dicoJob["REFCPU"]="11"
98 dicoJob["DIFREL"]="10%"
99 dicoJob["WARNING"]="WARNING"
101 dicoJob["RMAXREF"]=5.95
102 dicoJob["WRMAX"]="WARNING"
104 dicoJob["RMOYREF"]=3.88
107 dicoJob["R1QREF"]=2.84
109 dicoJob["RMEDREF"]=3.5
111 dicoJob["R2QREF"]=4.92
113 dicoJob["TMAXREF"]=35.5
116 dicoJob["TMOYREF"]=17.5
119 dicoJob["T1QREF"]=8.9
121 dicoJob["TMEDREF"]=17.8
123 dicoJob["T2QREF"]=26.5
124 texteMailleur=CreeJob(dicoJob)
125 monTexte+=texteMailleur
128 dico["TITRE"]="Nombre de Mailles dans le maillage entier"
129 dico["MAIL1"]="Quad_Edge"
135 dico["MAIL2"]="Quad_Triangle"
141 dico["MAIL3"]="Quad_Pyramid"
146 dico["WARN3"]="WARNING"
147 texteMaille=CreeMailleOuGroupe(dico,3)
148 monTexte+=texteMaille
150 fichierEssai="letter.html"
151 EcritFichier(monTexte,fichierEssai)
155 dico["TITRE"]="Nombre de Mailles dans le groupe FOND_07"
156 dico["MAIL1"]="Quad_Triangle"
162 texteMaille=CreeMailleOuGroupe(dico,1)
163 monTexte+=texteMaille
166 dico["TITRE"]="Nombre de Mailles dans le groupe PAROI_07"
167 dico["MAIL1"]="Quad_Triangle"
173 texteMaille=CreeMailleOuGroupe(dico,1)
174 monTexte+=texteMaille
177 dico["TITRE"]="Nombre de Mailles dans le groupe ROCHE_07"
178 dico["MAIL1"]="Pyramid"
184 texteMaille=CreeMailleOuGroupe(dico,1)
185 monTexte+=texteMaille
190 dicoJob["NOM"]="CUBE"
192 dicoJob["REFCPU"]="21"
193 dicoJob["DIFCPU"]="1"
194 dicoJob["DIFREL"]="100%"
195 dicoJob["WARNING"]="WARNING"
198 dicoJob["WRMAX"]="WARNING"
200 dicoJob["RMOYREF"]=1.8
201 dicoJob["WRMOY"]="WARNING"
203 dicoJob["R1QREF"]=1.4
205 dicoJob["RMEDREF"]=2.6
207 dicoJob["R2QREF"]=3.8
209 dicoJob["TMAXREF"]=3.5
210 dicoJob["WTMAX"]="WARNING"
212 dicoJob["TMOYREF"]=1.5
213 dicoJob["WTMOY"]="WARNING"
215 dicoJob["T1QREF"]=0.7
219 dicoJob["T2QREF"]=3.2
220 texteMailleur=CreeJob(dicoJob)
221 monTexte+=texteMailleur
224 dico["TITRE"]="Nombre de Mailles dans le maillage entier"
230 dico["WARN1"]="WARNING"
231 dico["MAIL2"]="Triangle"
237 dico["MAIL3"]="Pyramid"
242 dico["WARN3"]="WARNING"
243 texteMaille=CreeMailleOuGroupe(dico,3)
244 monTexte+=texteMaille
247 dico["TITRE"]="Nombre de Mailles dans le groupe SURFACE"
253 dico["WARN1"]="WARNING"
254 dico["MAIL2"]="Triangle"
260 texteMaille=CreeMailleOuGroupe(dico,2)
261 monTexte+=texteMaille
263 fichierEssai="/tmp/letter.html"
264 EcritFichier(monTexte,fichierEssai)