ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/app/topo_optis/src/main.cpp
Revision: 494
Committed: Thu Mar 6 20:39:09 2014 UTC (11 years, 5 months ago) by francois
File size: 4458 byte(s)
Log Message:
Possibilité d'enregistrement des mailleurs en cours de maillage pour voir ce qui se passe si il y a un bug

File Contents

# User Rev Content
1 francois 283 //------------------------------------------------------------
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     #ifdef WINDOWS_VERSION
29     #include "fenetre.h"
30     #endif
31    
32     #pragma hdrstop
33     #include "mg_file.h"
34     #include "mgopt_simp.h"
35     #include <string.h>
36 francois 432 #include "magic_application.h"
37 francois 283 //---------------------------------------------------------------------------
38    
39    
40    
41     int main(int argc,char **argv)
42     {
43 francois 432 std::vector<MAGIC_PARAMETRE_APPLICATION> lst;
44     MAGIC_PARAMETRE_APPLICATION p1(2,(char*)"-design",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier d'entrée de la geometrie complète");
45     MAGIC_PARAMETRE_APPLICATION p2(3,(char*)"-nondesign",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier d'entrée de la geometrie des zones à respecter");
46     MAGIC_PARAMETRE_APPLICATION p3(4,(char*)"-param",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier de parametres");
47     MAGIC_PARAMETRE_APPLICATION p4(5,(char*)"-changeseuil",MAGIC_PARAMETRE_APPLICATION::BOOL,(char*)"Changer le seuil sur un calcul déjà fait");
48 francois 470 MAGIC_PARAMETRE_APPLICATION p5(6,(char*)"-optimise",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Effectue une optimisation de topologie - Defaut");
49 francois 432 MAGIC_PARAMETRE_APPLICATION p6(7,(char*)"-creeparam",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Creer un fichier param.txt");
50 francois 494 MAGIC_PARAMETRE_APPLICATION p7(8,(char*)"-enregistrer",MAGIC_PARAMETRE_APPLICATION::BOOL,(char*)"Enregistrement de la dernière étape (pour debbugage) - Defaut false");
51    
52     p5.ajouter_dependance(1);p5.ajouter_dependance(2);p5.ajouter_dependance(3);p5.ajouter_dependance(4);p5.ajouter_dependance(5);p5.ajouter_dependance(8);
53 francois 432 p6.ajouter_dependance(4);
54     lst.push_back(p1);
55     lst.push_back(p2);
56     lst.push_back(p3);
57     lst.push_back(p4);
58     lst.push_back(p5);
59     lst.push_back(p6);
60 francois 494 lst.push_back(p7);
61 francois 283
62 francois 432 MAGIC_APPLICATION app((char*)"Optimisation de topologie",argc,argv,lst,false,true);
63     if (app.get_erreur()==true) return 0;
64 francois 283
65     char nomfichierd[500];
66     char nomfichierout[500];
67     char nomfichiernd[500];
68     char nomfichierparam[500];
69     nomfichierd[0]=0;
70     nomfichierout[0]=0;
71     nomfichierparam[0]=0;
72 francois 432 bool changeseuil=0;
73 francois 494 bool savedbg;
74 francois 432 if (app.get_action()==-1) app.change_action(6);
75     app.recupere_parametre_string(4,nomfichierparam,(char*)"Fichier de parametres manquant");
76 francois 283
77 francois 432 if (app.get_action()==6)
78     {
79     app.recupere_parametre_string(2,nomfichierd,(char*)"Fichier de design manquant");
80     app.recupere_parametre_string(3,nomfichiernd,(char*)"Fichier de non design manquant");
81     app.recupere_parametre_bool_avec_defaut(5,changeseuil,false);
82 francois 494 app.recupere_parametre_bool_avec_defaut(8,savedbg,false);
83 francois 432 app.recupere_parametre_string_avec_defaut(1,nomfichierout,nomfichierd);
84     }
85     if (app.get_erreur()==true) return 0;
86    
87    
88    
89     if (app.get_action()==6)
90     if (changeseuil==true)
91 francois 283 {
92 francois 494 MGOPT_SIMP opt(false);
93 francois 432 opt.active_affichage(app.affiche);
94 francois 283 opt.adapte_resultat(nomfichierd,nomfichierparam);
95     return 0 ;
96     }
97 francois 432 if (app.get_action()==7)
98 francois 283 {
99 francois 494 MGOPT_SIMP opt(false);
100 francois 432 opt.active_affichage(app.affiche);
101     opt.optimise(nomfichierparam);
102 francois 283 }
103 francois 432 if (app.get_action()==6)
104 francois 283 {
105 francois 494 MGOPT_SIMP opt(savedbg);
106     if (savedbg)
107     {
108     char nomfichier2[500];
109     strcpy(nomfichier2,nomfichierd);
110     strcat(nomfichier2,"dbg");
111     opt.change_nom_fichierdbg(nomfichier2);
112     }
113 francois 432 opt.active_affichage(app.affiche);
114     opt.optimise(nomfichierd,nomfichiernd,nomfichierout,nomfichierparam);
115 francois 493 }
116     app.affiche((char *)"Fin");
117 francois 470 return 0;
118 francois 283 }
119    
120    
121    
122     #pragma package(smart_init)