ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/app/carte/src/main.cpp
Revision: 1075
Committed: Tue Aug 10 17:02:54 2021 UTC (4 years ago) by francois
File size: 19251 byte(s)
Log Message:
suppression de warning avec le dernier compilateur

File Contents

# Content
1 //------------------------------------------------------------
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 "mg_export.h"
35 #include "fct_generateur_frontiere.h"
36 #include "fct_generateur_constante.h"
37 #include "fct_generateur_fichier.h"
38 #include "fct_taille_fem_solution_generateur_constant.h"
39 #include "fct_taille_fem_solution_generateur_echantillon_frontiere.h"
40 #include "fct_taille_fem_solution_generateur_fichier.h"
41 #include "magic_application.h"
42 #include <string.h>
43 //---------------------------------------------------------------------------
44
45
46
47
48 int main(int argc,char **argv)
49 {
50 std::vector<MAGIC_PARAMETRE_APPLICATION> lst;
51 MAGIC_PARAMETRE_APPLICATION p1(3,(char*)"-fichierpoint",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Fichier d'échantillonage");
52 MAGIC_PARAMETRE_APPLICATION p2(4,(char*)"-dg",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"Densité globale");
53 MAGIC_PARAMETRE_APPLICATION p3(5,(char*)"-eps",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"Écart entre le maillage et la géométrie");
54 MAGIC_PARAMETRE_APPLICATION p4(6,(char*)"-taillezone",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"Facteur pour la distance de variation de la carte autour de l'échantillon - Defaut 4");
55 MAGIC_PARAMETRE_APPLICATION p5(7,(char*)"-tauxtransfert",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"Poid de l'échantillon virtuel place en dehors de la zone de raffinement - Defaut 0.25");
56 MAGIC_PARAMETRE_APPLICATION p6(8,(char*)"-fechantillonnage",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Nombre d'échantillon par entité - Defaut 20");
57 MAGIC_PARAMETRE_APPLICATION p7(9,(char*)"-festimation",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Nombre de cellule dans une direction pour la grille virtuelle - Defaut 10");
58 MAGIC_PARAMETRE_APPLICATION p8(10,(char*)"-constante",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille constante");
59 MAGIC_PARAMETRE_APPLICATION p9(11,(char*)"-fichierechan",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille par un echantillonnage dans un fichier exterieur");
60 MAGIC_PARAMETRE_APPLICATION p10(12,(char*)"-courbure",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille par approximation des courbures");
61 MAGIC_PARAMETRE_APPLICATION p11(13,(char*)"-groupe",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Groupe topologique utilise pour faire le calcul - Defaut 0");
62 MAGIC_PARAMETRE_APPLICATION p12(14,(char*)"-numgeo",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Géométrie du groupe topologique - Defaut 0");
63 MAGIC_PARAMETRE_APPLICATION p13(15,(char*)"-constante2",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille constante définie par une FEM_SOLUTION");
64 MAGIC_PARAMETRE_APPLICATION p14(16,(char*)"-nx",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Nombre d'intervals sur x - Defaut 10");
65 MAGIC_PARAMETRE_APPLICATION p15(17,(char*)"-ny",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Nombre d'intervals sur y - Defaut 10");
66 MAGIC_PARAMETRE_APPLICATION p16(18,(char*)"-nz",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Nombre d'intervals sur z - Defaut 10");
67 MAGIC_PARAMETRE_APPLICATION p19(19,(char*)"-courbure2",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille par approximation des courbures définie par une FEM_SOLUTION");
68 MAGIC_PARAMETRE_APPLICATION p18(20,(char*)"-fichierechan2",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille par un echantillonnage dans un fichier exterieur définie par une FEM_SOLUTION");
69 MAGIC_PARAMETRE_APPLICATION p20(21,(char*)"-constante2mai",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Carte de taille constante définie par une FEM_SOLUTION basé sur maillage");
70 MAGIC_PARAMETRE_APPLICATION p21(22,(char*)"-nummai",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de maillage - Defaut le premier");
71 p8.ajouter_dependance(1);p8.ajouter_dependance(2);p8.ajouter_dependance(4);p8.ajouter_dependance(8);p8.ajouter_dependance(9);p8.ajouter_dependance(13);p8.ajouter_dependance(14);
72 p9.ajouter_dependance(1);p9.ajouter_dependance(2);p9.ajouter_dependance(3);p9.ajouter_dependance(4);p9.ajouter_dependance(6);p9.ajouter_dependance(7);p9.ajouter_dependance(8);p9.ajouter_dependance(9);
73 p10.ajouter_dependance(1);p10.ajouter_dependance(2);p10.ajouter_dependance(3);p10.ajouter_dependance(4);p10.ajouter_dependance(5);p10.ajouter_dependance(6);p10.ajouter_dependance(7);p10.ajouter_dependance(8);p10.ajouter_dependance(9);p10.ajouter_dependance(13);p10.ajouter_dependance(14);
74 p13.ajouter_dependance(1);p13.ajouter_dependance(2);p13.ajouter_dependance(4);p13.ajouter_dependance(8);p13.ajouter_dependance(14);p13.ajouter_dependance(16);p13.ajouter_dependance(17);p13.ajouter_dependance(18);
75 p18.ajouter_dependance(1);p18.ajouter_dependance(2);p18.ajouter_dependance(3);p18.ajouter_dependance(4);p18.ajouter_dependance(6);p18.ajouter_dependance(7);p18.ajouter_dependance(8);p18.ajouter_dependance(14);p18.ajouter_dependance(16);p18.ajouter_dependance(17);p18.ajouter_dependance(18);
76 p19.ajouter_dependance(1);p19.ajouter_dependance(2);p19.ajouter_dependance(4);p19.ajouter_dependance(5);p19.ajouter_dependance(6);p19.ajouter_dependance(7);p19.ajouter_dependance(8);p19.ajouter_dependance(14);p19.ajouter_dependance(16);p19.ajouter_dependance(17);p19.ajouter_dependance(18);p19.ajouter_dependance(3);
77 p20.ajouter_dependance(1);p20.ajouter_dependance(2);p20.ajouter_dependance(4);p20.ajouter_dependance(8);p20.ajouter_dependance(22);p20.ajouter_dependance(16);p20.ajouter_dependance(17);p20.ajouter_dependance(18);
78 lst.push_back(p1);
79 lst.push_back(p2);
80 lst.push_back(p3);
81 lst.push_back(p4);
82 lst.push_back(p5);
83 lst.push_back(p6);
84 lst.push_back(p7);
85 lst.push_back(p8);
86 lst.push_back(p9);
87 lst.push_back(p10);
88 lst.push_back(p11);
89 lst.push_back(p12);
90 lst.push_back(p13);
91 lst.push_back(p14);
92 lst.push_back(p15);
93 lst.push_back(p16);
94 lst.push_back(p19);
95 lst.push_back(p18);
96 lst.push_back(p20);
97 lst.push_back(p21);
98 MAGIC_APPLICATION app((char*)"Generation de carte de taille",argc,argv,lst,true,true);
99 if (app.get_erreur()==true) return 0;
100
101
102 if (app.get_action()==12)
103 {
104 char nomfichier[500];
105 char nomfichiersortie[500];
106 char nomfichierpoint[500];
107 double eng;
108 double eps;
109 double ind1,ind2;
110 int fechan,festim;
111 int numgroupe,numgeo;
112 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
113 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
114 app.recupere_parametre_string_avec_defaut(3,nomfichierpoint,(char*)"");
115 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
116 app.recupere_parametre_double(5,eps,(char*)"Valeur de l'écart entre la géométrie et le maillage");
117 app.recupere_parametre_double_avec_defaut(6,ind1,4.);
118 app.recupere_parametre_double_avec_defaut(7,ind2,0.25);
119 app.recupere_parametre_int_avec_defaut(8,fechan,20);
120 app.recupere_parametre_int_avec_defaut(9,festim,10);
121 app.recupere_parametre_int_avec_defaut(13,numgroupe,0);
122 app.recupere_parametre_int_avec_defaut(14,numgeo,0);
123 if (app.get_erreur()==true) return 0;
124 app.affiche((char*)"Generation de carte de taille basee sur la courbure des frontieres V1");
125 app.affiche((char*)"Lecture du fichier");
126 MG_FILE gest(nomfichier);
127 int nbptctl=0;
128 double *ptctl=NULL;
129 char mess[255];
130 if (strlen(nomfichierpoint)>0)
131 {
132 FILE* in=fopen(nomfichierpoint,"rt");
133 if (in!=NULL)
134 {
135 app.affiche((char*)"Lecture du fichier de points de controles");
136 char mess[255];
137 char* res=fgets(mess,255,in);
138 sscanf(mess,"%d",&nbptctl);
139 ptctl=new double[4*nbptctl];
140 for (int i=0;i<nbptctl;i++)
141 {
142 char* res=fgets(mess,255,in);
143 sscanf(mess,"%lf %lf %lf %lf",ptctl+4*i,ptctl+4*i+1,ptctl+4*i+2,ptctl+4*i+3);
144 }
145 fclose(in);
146 }
147 }
148 FCT_GENERATEUR_FRONTIERE carte(gest,eng,eps,ind1,ind2,ptctl,nbptctl);
149 app.affiche((char*)"Construction de la carte");
150 MG_GROUPE_TOPOLOGIQUE* mggt=NULL;
151 if (numgroupe!=0)
152 {
153 MG_GEOMETRIE* geo=gest.get_mg_geometrieid(numgeo);
154 mggt=geo->get_mg_groupe_topologiqueid(numgroupe);
155 }
156 carte.construit(fechan,festim,mggt);
157 app.affiche((char*)"Enregistrement de la carte");
158 carte.enregistrer(nomfichiersortie);
159 if (nbptctl!=0) delete [] ptctl;
160 app.affiche((char*)"Fin");
161 }
162 if (app.get_action()==19)
163 {
164 char nomfichier[500];
165 char nomfichiersortie[500];
166 char nomfichierpoint[500];
167 double eng;
168 double eps;
169 double ind1,ind2;
170 int fechan;
171 int numgeo;
172 int nx,ny,nz;
173 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
174 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
175 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
176 app.recupere_parametre_double(5,eps,(char*)"Valeur de l'écart entre la géométrie et le maillage");
177 app.recupere_parametre_string_avec_defaut(3,nomfichierpoint,(char*)"",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
178 app.recupere_parametre_double_avec_defaut(6,ind1,4.);
179 app.recupere_parametre_double_avec_defaut(7,ind2,0.25);
180 app.recupere_parametre_int_avec_defaut(8,fechan,20);
181 app.recupere_parametre_int_avec_defaut(14,numgeo,0);
182 app.recupere_parametre_int_avec_defaut(16,nx,10);
183 app.recupere_parametre_int_avec_defaut(17,ny,10);
184 app.recupere_parametre_int_avec_defaut(18,nz,10);
185 if (app.get_erreur()==true) return 0;
186 app.affiche((char*)"Generation de carte de taille basee sur la courbure des frontieres V2");
187 app.affiche((char*)"Lecture du fichier");
188 MG_FILE gest(nomfichier);
189 char mess[255];
190 MG_GESTIONNAIRE gest1;
191 char nomsolution[5000];
192 sprintf(nomsolution,"%sctt.sol",nomfichiersortie);
193 int nbptctl;double *ptctl;
194 if (strlen(nomfichierpoint)>0)
195 {
196 FILE* in=fopen(nomfichierpoint,"rt");
197 if (in!=NULL)
198 {
199 app.affiche((char*)"Lecture du fichier de points de controles");
200 char mess[255];
201 char* res=fgets(mess,255,in);
202 sscanf(mess,"%d",&nbptctl);
203 ptctl=new double[4*nbptctl];
204 for (int i=0;i<nbptctl;i++)
205 {
206 char* res=fgets(mess,255,in);
207 sscanf(mess,"%lf %lf %lf %lf",ptctl+4*i,ptctl+4*i+1,ptctl+4*i+2,ptctl+4*i+3);
208 }
209 fclose(in);
210 }
211 }
212 app.affiche((char*)"Construction de la carte");
213 MG_GEOMETRIE *geo;
214 if (numgeo==0) geo=gest.get_mg_geometrie(0); else geo=gest.get_mg_geometrieid(numgeo);
215 FCT_TAILLE_FEM_SOLUTION_GENERATEUR_ECHANTILLON_FRONTIERE carte(&gest1,geo,eng,fechan,nx,ny,nz,nomsolution,eps,ind1,ind2,ptctl,nbptctl);
216 carte.active_affichage(app.affiche);
217 carte.construit();
218 if (nbptctl!=0) delete [] ptctl;
219 app.affiche((char*)"Enregistrement de la carte");
220 carte.enregistrer(nomfichiersortie);
221 app.affiche((char*)"Fin");
222 }
223 if (app.get_action()==10)
224 {
225 char nomfichier[500];
226 char nomfichiersortie[500];
227 double eng;
228 int fechan,festim;
229 int numgroupe,numgeo;
230 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
231 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
232 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
233 app.recupere_parametre_int_avec_defaut(8,fechan,20);
234 app.recupere_parametre_int_avec_defaut(9,festim,10);
235 app.recupere_parametre_int_avec_defaut(13,numgroupe,0);
236 app.recupere_parametre_int_avec_defaut(14,numgeo,0);
237 if (app.get_erreur()==true) return 0;
238 app.affiche((char*)"Generation de carte de taille constante V1");
239 app.affiche((char*)"Lecture du fichier");
240 MG_FILE gest(nomfichier);
241 FCT_GENERATEUR_CONSTANTE carte(gest,eng);
242 app.affiche((char*)"Construction de la carte");
243 MG_GROUPE_TOPOLOGIQUE* mggt=NULL;
244 if (numgroupe!=0)
245 {
246 MG_GEOMETRIE* geo=gest.get_mg_geometrieid(numgeo);
247 mggt=geo->get_mg_groupe_topologiqueid(numgroupe);
248 }
249 carte.construit(fechan,festim,mggt);
250 app.affiche((char*)"Enregistrement de la carte");
251 carte.enregistrer(nomfichiersortie);
252 app.affiche((char*)"Fin");
253 }
254 if (app.get_action()==11)
255 {
256 char nomfichier[500];
257 char nomfichiersortie[500];
258 char nomfichierpoint[500];
259 double eng;
260 int fechan,festim;
261 double ind1,ind2;
262 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
263 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
264 app.recupere_parametre_string(3,nomfichierpoint,(char*)"Fichier de points manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
265 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
266 app.recupere_parametre_double_avec_defaut(6,ind1,4.);
267 app.recupere_parametre_double_avec_defaut(7,ind2,0.25);
268 app.recupere_parametre_int_avec_defaut(8,fechan,20);
269 app.recupere_parametre_int_avec_defaut(9,festim,10);
270 if (app.get_erreur()==true) return 0;
271 app.affiche((char*)"Generation de carte de taille");
272 app.affiche((char*)" a partir du fichier d'estimation V1");
273 FCT_GENERATEUR_FICHIER carte(nomfichierpoint,eng,ind1,ind2);
274 app.affiche((char*)"Construction de la carte");
275 carte.construit(fechan,festim);
276 app.affiche((char*)"Enregistrement de la carte");
277 carte.enregistrer(nomfichiersortie);
278 app.affiche((char*)"Fin");
279 }
280 if (app.get_action()==20)
281 {
282 char nomfichier[500];
283 char nomfichiersortie[500];
284 char nomfichierpoint[500];
285 double eng;
286 int fechan,nx,ny,nz,numgeo;
287 double ind1,ind2;
288 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
289 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
290 app.recupere_parametre_string(3,nomfichierpoint,(char*)"Fichier de points manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
291 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
292 app.recupere_parametre_double_avec_defaut(6,ind1,4.);
293 app.recupere_parametre_double_avec_defaut(7,ind2,0.25);
294 app.recupere_parametre_int_avec_defaut(8,fechan,20);
295 app.recupere_parametre_int_avec_defaut(14,numgeo,0);
296 app.recupere_parametre_int_avec_defaut(16,nx,10);
297 app.recupere_parametre_int_avec_defaut(17,ny,10);
298 app.recupere_parametre_int_avec_defaut(18,nz,10);
299 if (app.get_erreur()==true) return 0;
300 app.affiche((char*)"Generation de carte de taille");
301 app.affiche((char*)" a partir du fichier d'estimation V2");
302 app.affiche((char*)"Lecture du fichier");
303 MG_FILE gest(nomfichier);
304 MG_GESTIONNAIRE gest1;
305 char nomsolution[5000];
306 sprintf(nomsolution,"%sctt.sol",nomfichiersortie);
307 MG_GEOMETRIE *geo;
308 if (numgeo==0) geo=gest.get_mg_geometrie(0); else geo=gest.get_mg_geometrieid(numgeo);
309 FCT_TAILLE_FEM_SOLUTION_GENERATEUR_FICHIER carte(&gest1,geo,eng,fechan,nx,ny,nz,nomsolution,nomfichierpoint,ind1,ind2);
310 app.affiche((char*)"Construction de la carte");
311 carte.construit();
312 app.affiche((char*)"Enregistrement de la carte");
313 carte.enregistrer(nomfichiersortie);
314 app.affiche((char*)"Fin");
315 }
316 if (app.get_action()==15)
317 {
318 char nomfichier[500];
319 char nomfichiersortie[500];
320 double eng;
321 int fechan,nx,ny,nz;
322 int numgeo;
323 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
324 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
325 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
326 app.recupere_parametre_int_avec_defaut(8,fechan,20);
327 app.recupere_parametre_int_avec_defaut(14,numgeo,0);
328 app.recupere_parametre_int_avec_defaut(16,nx,10);
329 app.recupere_parametre_int_avec_defaut(17,ny,10);
330 app.recupere_parametre_int_avec_defaut(18,nz,10);
331 if (app.get_erreur()==true) return 0;
332 app.affiche((char*)"Generation de carte de taille constante V2");
333 app.affiche((char*)"Lecture du fichier");
334 MG_FILE gest(nomfichier);
335 MG_GEOMETRIE* geo;
336 if (numgeo==0) geo=gest.get_mg_geometrie(0); else geo=gest.get_mg_geometrieid(numgeo);
337 MG_GESTIONNAIRE gest1;
338 char nomsolution[5000];
339 sprintf(nomsolution,"%sctt.sol",nomfichiersortie);
340 app.affiche((char*)"Construction de la carte");
341 FCT_TAILLE_FEM_SOLUTION_GENERATEUR_CONSTANT carte(&gest1,geo,eng,fechan,nx,ny,nz,nomsolution);
342 carte.construit();
343 app.affiche((char*)"Enregistrement de la carte");
344 carte.enregistrer(nomfichiersortie);
345 app.affiche((char*)"Fin");
346 }
347 if (app.get_action()==21)
348 {
349 char nomfichier[500];
350 char nomfichiersortie[500];
351 double eng;
352 int fechan,nx,ny,nz;
353 int nummai;
354 app.recupere_parametre_string(1,nomfichier,(char*)"Fichier entrant manquant",MAGIC_APPLICATION::VERIFFICHIEREXISTE);
355 app.recupere_parametre_string(2,nomfichiersortie,(char*)"Fichier de sortie manquant");
356 app.recupere_parametre_double(4,eng,(char*)"Valeur de l'écart nodal global");
357 app.recupere_parametre_int_avec_defaut(8,fechan,20);
358 app.recupere_parametre_int_avec_defaut(22,nummai,0);
359 app.recupere_parametre_int_avec_defaut(16,nx,10);
360 app.recupere_parametre_int_avec_defaut(17,ny,10);
361 app.recupere_parametre_int_avec_defaut(18,nz,10);
362 if (app.get_erreur()==true) return 0;
363 app.affiche((char*)"Generation de carte de taille constante V2");
364 app.affiche((char*)"Lecture du fichier");
365 MG_FILE gest(nomfichier);
366 MG_MAILLAGE* mai;
367 if (nummai==0) mai=gest.get_mg_maillage(0); else mai=gest.get_mg_maillageid(nummai);
368 MG_GESTIONNAIRE gest1;
369 char nomsolution[5000];
370 sprintf(nomsolution,"%sctt.sol",nomfichiersortie);
371 app.affiche((char*)"Construction de la carte");
372 FCT_TAILLE_FEM_SOLUTION_GENERATEUR_CONSTANT carte(&gest1,mai,eng,fechan,nx,ny,nz,nomsolution);
373 carte.construit();
374 app.affiche((char*)"Enregistrement de la carte");
375 carte.enregistrer(nomfichiersortie);
376 app.affiche((char*)"Fin");
377 }
378
379 return 0;
380 }
381
382
383
384 #pragma package(smart_init)