Bonjour,

j'ai un fichier ascii qui a cette tête là:

solid SC_CONDENSEUR_AMONT
color 0.83529 0.57255 0.24314
facet normal 0.999961257 0 0.00880447961
outer loop
vertex -1945.27686 -344.599426 345.291809
vertex -1945.24146 -340.597046 341.27124
vertex -1945.24146 -344.599426 341.27124
endloop
endfacet
.....

voici le code que j'utilise pour lire les lignes et trier en fonction de 2 critères : "vertex" et "normal":

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
fidr = open(fichier, 'r') # Ouverture du fichier
   while 1: # Boucle sur tout le fichier
      ligne = fidr.readline()
      if ligne == '':
         break # fin du fichier
      if string.find(ligne, 'normal'): # traiter le cas "normal"
         numpy.array = ??? 
      if ligne.find('vertex'): # traiter le cas "vertex"
         numpy.array = ???
Ce que je souhaite :
- lire ligne après ligne le fichier
- pour chaque ligne, tester si les mots "vertex" et "normal" apparaissent
- pour chaque cas, convertir les chaines en valeurs numériques et les stocker dans 2 tableaux vertex et normal

Je sèche sur la conversion du texte en float ....