ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/app/microstructure/src/main.cpp
Revision: 919
Committed: Tue Mar 6 17:51:54 2018 UTC (7 years, 2 months ago) by couturad
File size: 21691 byte(s)
Log Message:
Correction des bugs lors de l'execution en mode RELWITHDEBINFO.
Ajouts de fichiers pour la librairie MICROSTRUCTURE

File Contents

# User Rev Content
1 francois 756 //------------------------------------------------------------
2     //------------------------------------------------------------
3     // MAGiC
4     // Jean Christophe Cuilli�re et Vincent FRANCOIS
5     // D�partement de G�nie M�canique - UQTR
6     //------------------------------------------------------------
7     // Le projet MAGIC est un projet de recherche du d�partement
8     // de g�nie m�canique de l'Universit� du Qu�bec �
9     // Trois Rivi�res
10     // Les librairies ne peuvent �tre utilis�es sans l'accord
11     // des auteurs (contact : francois@uqtr.ca)
12     //------------------------------------------------------------
13     //------------------------------------------------------------
14     //
15     // main.cpp
16     //
17     //------------------------------------------------------------
18     //------------------------------------------------------------
19     // COPYRIGHT 2000
20     // Version du 02/03/2006 � 11H25
21     //------------------------------------------------------------
22     //------------------------------------------------------------
23    
24    
25    
26    
27     #include "gestionversion.h"
28     #include "magic_application.h"
29 couturad 919 #include "mstruct_ves.h"
30     #include "mstruct_ver.h"
31     #include "mstruct_parametres.h"
32     #include "mg_gestionnaire.h"
33     #include "mg_file.h"
34     #include "fct_taille_fem_solution.h"
35     #ifdef ALL_OCC
36     #include "occ_import.h"
37     #endif
38 francois 756 //---------------------------------------------------------------------------
39    
40    
41 couturad 919 using namespace MICROSTRUCTURE;
42 francois 756
43     int main(int argc,char **argv)
44     {
45     std::vector<MAGIC_PARAMETRE_APPLICATION> lst;
46 couturad 919
47     // p_in(1) -in
48     // p_out(2) -out
49     MAGIC_PARAMETRE_APPLICATION p1(3,(char*)"-ves_in",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier VES d'entree");
50     MAGIC_PARAMETRE_APPLICATION p2(4,(char*)"-ves_out",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier VES de sortie");
51     MAGIC_PARAMETRE_APPLICATION p3(5,(char*)"-param",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier de parametres");
52     MAGIC_PARAMETRE_APPLICATION p4(6,(char*)"-lstparam",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier listant plusieurs fichiers de parametres");
53     MAGIC_PARAMETRE_APPLICATION p5(7,(char*)"-gen_geo",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer la geometrie");
54     MAGIC_PARAMETRE_APPLICATION p6(8,(char*)"-gen_mat",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer les materiaux");
55     MAGIC_PARAMETRE_APPLICATION p7(9,(char*)"-gen_carte",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer la carte de taille");
56     MAGIC_PARAMETRE_APPLICATION p8(10,(char*)"-gen_mg_maill",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer le MG maillage");
57     MAGIC_PARAMETRE_APPLICATION p9(11,(char*)"-gen_fem_maill",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer le FEM maillage");
58     MAGIC_PARAMETRE_APPLICATION p10(12,(char*)"-gen_etude",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer l'etude");
59     MAGIC_PARAMETRE_APPLICATION p11(13,(char*)"-gen_homogen",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Generer l'homogeneisation");
60     MAGIC_PARAMETRE_APPLICATION p12(14,(char*)"-carte",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Carte de taille FEM solution");
61     MAGIC_PARAMETRE_APPLICATION p13(15,(char*)"-calcul",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Lancer la resolution numerique");
62     MAGIC_PARAMETRE_APPLICATION p14(16,(char*)"-creeparam",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Creer une structure de parametres");
63     MAGIC_PARAMETRE_APPLICATION p15(17,(char*)"-tristl",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Importation de la triangulation STL de la microstructure");
64     MAGIC_PARAMETRE_APPLICATION p16(18,(char*)"-eps",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"Distance max entre la triangulation et la géométrie");
65     MAGIC_PARAMETRE_APPLICATION p17(19,(char*)"-paramaster",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier de parametre aster");
66     MAGIC_PARAMETRE_APPLICATION p18(20,(char*)"-fichier",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier de resultat");
67     MAGIC_PARAMETRE_APPLICATION p19(21,(char*)"-homogeneisation",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Homogeneisation d'une liste de VES");
68     MAGIC_PARAMETRE_APPLICATION p20(22,(char*)"-lstves",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Liste de VES");
69     MAGIC_PARAMETRE_APPLICATION p21(23,(char*)"-test",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"test");
70    
71     p5.ajouter_dependance(4);p5.ajouter_dependance(5);p5.ajouter_dependance(6);
72     p6.ajouter_dependance(3);p6.ajouter_dependance(4);p6.ajouter_dependance(5);p6.ajouter_dependance(6);
73     p7.ajouter_dependance(3);p7.ajouter_dependance(5);
74     p8.ajouter_dependance(3);p8.ajouter_dependance(4);p8.ajouter_dependance(5);p8.ajouter_dependance(14);
75     p9.ajouter_dependance(3);p9.ajouter_dependance(4);p9.ajouter_dependance(5);
76     p10.ajouter_dependance(3);p10.ajouter_dependance(4);p10.ajouter_dependance(5);
77     p11.ajouter_dependance(3);p11.ajouter_dependance(5);p11.ajouter_dependance(20);
78     p13.ajouter_dependance(3);p13.ajouter_dependance(4);p13.ajouter_dependance(5);p13.ajouter_dependance(19);
79     p14.ajouter_dependance(5);
80     p15.ajouter_dependance(3);p15.ajouter_dependance(18);p15.ajouter_dependance(4);
81     p19.ajouter_dependance(22);p19.ajouter_dependance(6);p19.ajouter_dependance(20);
82     p21.ajouter_dependance(3);
83 couturad 772 lst.push_back(p1);
84     lst.push_back(p2);
85     lst.push_back(p3);
86 couturad 919 lst.push_back(p4);
87     lst.push_back(p5);
88     lst.push_back(p6);
89     lst.push_back(p7);
90     lst.push_back(p8);
91     lst.push_back(p9);
92     lst.push_back(p10);
93     lst.push_back(p11);
94     lst.push_back(p12);
95     lst.push_back(p13);
96     lst.push_back(p14);
97     lst.push_back(p15);
98     lst.push_back(p16);
99     lst.push_back(p17);
100     lst.push_back(p18);
101     lst.push_back(p19);
102     lst.push_back(p20);
103     lst.push_back(p21);
104 francois 756
105 couturad 919 MAGIC_APPLICATION app((char*)"Homogéinisation d'une microstructure",argc,argv,lst,true,true);
106     if(app.get_erreur()==true) return 0;
107    
108     if(app.get_action()==7)
109 couturad 772 {
110 couturad 919 app.affiche((char*)"**************************************");
111     app.affiche((char*)"*** Generation de la geometrie ***");
112     app.affiche((char*)"**************************************");
113     char fichier_ves_out[500];
114     char fichier_param[500];
115     char fichier_lstparam[500];
116     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
117     app.recupere_parametre_string_avec_defaut(5,fichier_param,(char*)"");
118     app.recupere_parametre_string_avec_defaut(6,fichier_lstparam,(char*)"");
119     if (app.get_erreur()==true) return 0;
120     std::string str_fichier_ves_out = fichier_ves_out;
121     size_t found = str_fichier_ves_out.rfind((char*)".");
122     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
123     str_fichier_magic_out.append((char*)".magic");
124     if(strlen(fichier_param)>0 && strlen(fichier_lstparam)>0)
125     {
126     app.affiche_erreur((char*)"Une seule valeur pour -param OU -lstparam doit etre fournie");
127     return 0;
128     }
129     if(strlen(fichier_param)>0)
130     {
131     std::vector<OT_PARAMETRES*> vector_param_geometrie;
132     OT_PARAMETRES* param_geometrie = new OT_PARAMETRES;
133     PARAMETRES::importer_fichier_parametres(fichier_param,param_geometrie);
134     vector_param_geometrie.push_back(param_geometrie);
135     VES ves;
136     ves.active_affichage(app.affiche);
137     ves.generer_geometrie(vector_param_geometrie);
138     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
139     delete param_geometrie;
140     }
141     else if(strlen(fichier_lstparam)>0)
142     {
143     std::vector<OT_PARAMETRES*> vector_param_geometrie;
144     PARAMETRES::importer_fichier_liste_parametres(fichier_lstparam,vector_param_geometrie);
145     VES ves;
146     ves.active_affichage(app.affiche);
147     ves.generer_geometrie(vector_param_geometrie);
148     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
149     std::vector<OT_PARAMETRES*>::iterator it_vector;
150     for(it_vector=vector_param_geometrie.begin();it_vector!=vector_param_geometrie.end();it_vector++)
151     {
152     delete *it_vector;
153     }
154     }
155 couturad 772 }
156 francois 756
157 couturad 919 if(app.get_action()==8)
158 couturad 772 {
159 couturad 919 app.affiche((char*)"************************************");
160     app.affiche((char*)"*** Generation des materiaux ***");
161     app.affiche((char*)"************************************");
162     char fichier_ves_in[500];
163     char fichier_ves_out[500];
164     char fichier_param[500];
165     char fichier_lstparam[500];
166     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
167     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
168     app.recupere_parametre_string_avec_defaut(5,fichier_param,(char*)"");
169     app.recupere_parametre_string_avec_defaut(6,fichier_lstparam,(char*)"");
170     if (app.get_erreur()==true) return 0;
171     std::string str_fichier_ves_out = fichier_ves_out;
172     size_t found = str_fichier_ves_out.rfind((char*)".");
173     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
174     str_fichier_magic_out.append((char*)".magic");
175     if(strlen(fichier_param)>0 && strlen(fichier_lstparam)>0)
176     {
177     app.affiche_erreur((char*)"Une seule valeur pour -param OU -lstparam doit etre fournie");
178     return 0;
179     }
180     if(strlen(fichier_param)>0)
181     {
182     std::vector<OT_PARAMETRES*> vector_param_materiau;
183     OT_PARAMETRES* param_materiau = new OT_PARAMETRES;
184     PARAMETRES::importer_fichier_parametres(fichier_param,param_materiau);
185     vector_param_materiau.push_back(param_materiau);
186     VES ves(fichier_ves_in);
187     ves.active_affichage(app.affiche);
188     ves.generer_materiau(vector_param_materiau);
189     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
190     delete param_materiau;
191     }
192     else if(strlen(fichier_lstparam)>0)
193     {
194     std::vector<OT_PARAMETRES*> vector_param_materiau;
195     PARAMETRES::importer_fichier_liste_parametres(fichier_lstparam,vector_param_materiau);
196     VES ves(fichier_ves_in);
197     ves.active_affichage(app.affiche);
198     ves.generer_materiau(vector_param_materiau);
199     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
200     std::vector<OT_PARAMETRES*>::iterator it_vector;
201     for(it_vector=vector_param_materiau.begin();it_vector!=vector_param_materiau.end();it_vector++)
202     {
203     delete *it_vector;
204     }
205     }
206 couturad 772 }
207 couturad 919
208     if(app.get_action()==9)
209     {
210     app.affiche((char*)"********************************************");
211     app.affiche((char*)"*** Generation de la carte de taille ***");
212     app.affiche((char*)"********************************************");
213     char fichier_ves_in[500];
214     char fichier_param[500];
215     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
216     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
217     if (app.get_erreur()==true) return 0;
218     OT_PARAMETRES* param_carte = new OT_PARAMETRES;
219     PARAMETRES::importer_fichier_parametres(fichier_param,param_carte);
220     VES ves(fichier_ves_in);
221     ves.active_affichage(app.affiche);
222     ves.generer_carte(param_carte);
223     delete param_carte;
224     }
225    
226     if(app.get_action()==10)
227     {
228     app.affiche((char*)"**********************************");
229     app.affiche((char*)"*** Generation du maillage ***");
230     app.affiche((char*)"**********************************");
231     char fichier_ves_in[500];
232     char fichier_ves_out[500];
233     char fichier_param[500];
234     char fichier_carte[500];
235     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
236     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
237     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
238     app.recupere_parametre_string(14,fichier_carte,(char*)"Fichier de carte de taille manquant");
239     if (app.get_erreur()==true) return 0;
240     std::string str_fichier_ves_out = fichier_ves_out;
241     size_t found = str_fichier_ves_out.rfind((char*)".");
242     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
243     str_fichier_magic_out.append((char*)".magic");
244     OT_PARAMETRES* param_maillage = new OT_PARAMETRES;
245     PARAMETRES::importer_fichier_parametres(fichier_param,param_maillage);
246     VES ves(fichier_ves_in);
247     ves.active_affichage(app.affiche);
248     FCT_TAILLE_FEM_SOLUTION *carte=new FCT_TAILLE_FEM_SOLUTION(fichier_carte);
249     ves.generer_maillage(param_maillage,carte);
250     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
251     delete param_maillage;
252     delete carte;
253     }
254    
255     if(app.get_action()==11)
256     {
257     app.affiche((char*)"**************************************");
258     app.affiche((char*)"*** Generation du FEM maillage ***");
259     app.affiche((char*)"**************************************");
260     char fichier_ves_in[500];
261     char fichier_ves_out[500];
262     char fichier_param[500];
263     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
264     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
265     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
266     if (app.get_erreur()==true) return 0;
267     std::string str_fichier_ves_out = fichier_ves_out;
268     size_t found = str_fichier_ves_out.rfind((char*)".");
269     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
270     str_fichier_magic_out.append((char*)".magic");
271     OT_PARAMETRES* param_maillage = new OT_PARAMETRES;
272     PARAMETRES::importer_fichier_parametres(fichier_param,param_maillage);
273     VES ves(fichier_ves_in);
274     ves.active_affichage(app.affiche);
275     ves.generer_fem_maillage(param_maillage);
276     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
277     delete param_maillage;
278     }
279    
280    
281     if(app.get_action()==12)
282     {
283     app.affiche((char*)"*********************************");
284     app.affiche((char*)"*** Generation de l'etude ***");
285     app.affiche((char*)"*********************************");
286     char fichier_ves_in[500];
287     char fichier_ves_out[500];
288     char fichier_param[500];
289     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
290     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
291     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
292     if (app.get_erreur()==true) return 0;
293     std::string str_fichier_ves_out = fichier_ves_out;
294     size_t found = str_fichier_ves_out.rfind((char*)".");
295     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
296     str_fichier_magic_out.append((char*)".magic");
297     OT_PARAMETRES* param_etude = new OT_PARAMETRES;
298     PARAMETRES::importer_fichier_parametres(fichier_param,param_etude);
299     VES ves(fichier_ves_in);
300     ves.active_affichage(app.affiche);
301     ves.generer_etude(param_etude);
302     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
303     delete param_etude;
304     }
305    
306     if(app.get_action()==13)
307     {
308     app.affiche((char*)"*******************************************");
309     app.affiche((char*)"*** Generation de l'homogeneisation ***");
310     app.affiche((char*)"*******************************************");
311     char fichier_ves_in[500];
312     char fichier_param[500];
313     char fichier_resultat[500];
314     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
315     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
316     app.recupere_parametre_string(20,fichier_resultat,(char*)"Fichier de resultat manquant");
317     if (app.get_erreur()==true) return 0;
318     OT_PARAMETRES* param_etude = new OT_PARAMETRES;
319     PARAMETRES::importer_fichier_parametres(fichier_param,param_etude);
320     VES ves(fichier_ves_in);
321     ves.active_affichage(app.affiche);
322     ves.homogeneisation(param_etude,fichier_resultat);
323     delete param_etude;
324     }
325    
326     if(app.get_action()==15)
327     {
328     app.affiche((char*)"******************");
329     app.affiche((char*)"*** Calcul ***");
330     app.affiche((char*)"******************");
331     char fichier_ves_in[500];
332     char fichier_ves_out[500];
333     char fichier_param[500];
334     char fichier_param_aster[500];
335     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
336     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
337     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
338     app.recupere_parametre_string(19,fichier_param_aster,(char*)"Fichier de parametre aster manquant");
339     if (app.get_erreur()==true) return 0;
340     std::string str_fichier_ves_out = fichier_ves_out;
341     size_t found = str_fichier_ves_out.rfind((char*)".");
342     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
343     str_fichier_magic_out.append((char*)".magic");
344     OT_PARAMETRES* param_etude = new OT_PARAMETRES;
345     PARAMETRES::importer_fichier_parametres(fichier_param,param_etude);
346     VES ves(fichier_ves_in);
347     ves.active_affichage(app.affiche);
348     ves.calcul(param_etude,fichier_param_aster);
349     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
350     delete param_etude;
351     }
352    
353     if(app.get_action()==16)
354     {
355     app.affiche((char*)"**************************************************");
356     app.affiche((char*)"*** Creation d'une structure de parametres ***");
357     app.affiche((char*)"**************************************************");
358     char fichier_param[500];
359     app.recupere_parametre_string(5,fichier_param,(char*)"Fichier de parametre manquant");
360     if (app.get_erreur()==true) return 0;
361     PARAMETRES::generer_fichier_parametres(fichier_param);
362     }
363    
364     if(app.get_action()==17)
365     {
366     #ifdef ALL_OCC
367     app.affiche((char*)"********************************************************************");
368     app.affiche((char*)"*** Importation de la triangulation STL de la microstructure ***");
369     app.affiche((char*)"********************************************************************");
370     char fichier_ves_in[500];
371     char fichier_ves_out[500];
372     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
373     app.recupere_parametre_string(4,fichier_ves_out,(char*)"Fichier VES de sortie manquant");
374     double eps;
375     app.recupere_parametre_double_avec_defaut(18,eps,0.1);
376     if (app.get_erreur()==true) return 0;
377     std::string str_fichier_ves_out = fichier_ves_out;
378     size_t found = str_fichier_ves_out.rfind((char*)".");
379     std::string str_fichier_magic_out = str_fichier_ves_out.substr(0,found);
380     str_fichier_magic_out.append((char*)".magic");
381     VES ves(fichier_ves_in);
382     MG_GESTIONNAIRE* gest = ves.get_mg_gestionnaire();
383     MG_GEOMETRIE* mggeo = ves.get_mg_geometrie();
384     OCC_IMPORT occ_import;
385     MG_MAILLAGE* tristl = occ_import.importer_triangulation_V2017(*gest,mggeo,eps);
386     ves.enregistrer(fichier_ves_out,(char*)str_fichier_magic_out.c_str());
387     #endif
388     }
389    
390     if(app.get_action()==21)
391     {
392     app.affiche((char*)"***************************");
393     app.affiche((char*)"*** HOMOGENEISATION ***");
394     app.affiche((char*)"***************************");
395     char fichier_lst_ves[500];
396     char fichier_param[500];
397     char fichier_lstparam[500];
398     char fichier_resultat[500];
399     app.recupere_parametre_string(22,fichier_lst_ves,(char*)"Fichier de liste de VES");
400     app.recupere_parametre_string_avec_defaut(5,fichier_param,(char*)"");
401     app.recupere_parametre_string_avec_defaut(6,fichier_lstparam,(char*)"");
402     app.recupere_parametre_string(20,fichier_resultat,(char*)"Fichier de resultat manquant");
403     if (app.get_erreur()==true) return 0;
404     if(strlen(fichier_param)>0 && strlen(fichier_lstparam)>0)
405     {
406     app.affiche_erreur((char*)"Une seule valeur pour -param OU -lstparam doit etre fournie");
407     return 0;
408     }
409     if(strlen(fichier_param)>0)
410     {
411     std::vector<OT_PARAMETRES*> vector_param;
412     OT_PARAMETRES* param = new OT_PARAMETRES;
413     PARAMETRES::importer_fichier_parametres(fichier_param,param);
414     vector_param.push_back(param);
415     VER ver;
416     ver.active_affichage(app.affiche);
417     ver.homogeneisation(fichier_lst_ves,vector_param,fichier_resultat);
418     delete param;
419     }
420     else if(strlen(fichier_lstparam)>0)
421     {
422     std::vector<OT_PARAMETRES*> vector_param;
423     PARAMETRES::importer_fichier_liste_parametres(fichier_lstparam,vector_param);
424     VER ver;
425     ver.active_affichage(app.affiche);
426     ver.homogeneisation(fichier_lst_ves,vector_param,fichier_resultat);
427     std::vector<OT_PARAMETRES*>::iterator it_vector;
428     for(it_vector=vector_param.begin();it_vector!=vector_param.end();it_vector++)
429     {
430     delete *it_vector;
431     }
432     }
433     }
434    
435     if(app.get_action()==23)
436     {
437     app.affiche((char*)"****************");
438     app.affiche((char*)"*** TEST ***");
439     app.affiche((char*)"****************");
440     char fichier_ves_in[500];
441     app.recupere_parametre_string(3,fichier_ves_in,(char*)"Fichier VES de entrant manquant");
442     if (app.get_erreur()==true) return 0;
443     for(int i=0;i<100;i++)
444     {
445     std::cout << i << std::endl;
446     MG_GESTIONNAIRE* gest = new MG_FILE(fichier_ves_in);
447     delete gest;
448     // VES ves(fichier_ves_in);
449     }
450     }
451    
452 francois 756 app.affiche((char*)"Fin");
453 couturad 919 // MAGIC_PARAMETRE_APPLICATION p1(2,(char*)"-construire",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Construction du VER selon le fichier de parametre");
454     // MAGIC_PARAMETRE_APPLICATION p2(3,(char*)"-param",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier parametre");
455     // MAGIC_PARAMETRE_APPLICATION p3(4,(char*)"-creeparam",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Création d'un fichier parametre");
456     // p1.ajouter_dependance(3);
457     // p3.ajouter_dependance(1);
458     // lst.push_back(p1);
459     // lst.push_back(p2);
460     // lst.push_back(p3);
461     // MAGIC_APPLICATION app((char*)"Homogéinisation d'une microstructure",argc,argv,lst,false,true);
462     // if (app.get_erreur()==true) return 0;
463     //
464     // if (app.get_action()==2)
465     // {
466     // char fichierparam[1000];
467     // app.recupere_parametre_string(3,fichierparam,(char*)"Fichier parametre manquant");
468     // VE_VES *ves = new VE_VES();
469     // ves->active_affichage(app.affiche);
470     // ves->lire_param_VES(fichierparam);
471     // ves->construire();
472     //
473     // }
474     //
475     // if (app.get_action()==4)
476     // {
477     // char fichierout[1000];
478     // app.recupere_parametre_string(1,fichierout,(char*)"Fichier resultat manquant");
479     // OT_PARAMETRES param;
480     // ini_param_VER(&param);
481     // param.enregistrer(fichierout);
482     // }
483     // app.affiche((char*)"Fin");
484 francois 756 return 0;
485     }
486    
487    
488    
489     #pragma package(smart_init)