ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/app/trans_maillage/src/main.cpp
Revision: 658
Committed: Wed Mar 4 20:35:01 2015 UTC (10 years, 5 months ago) by sattarpa
File size: 9849 byte(s)
Log Message:
debuger criaqoperation et ajouter point_insert avec types.

File Contents

# Content
1 #include "gestionversion.h"
2 #include <stdio.h>
3 #include "mg_file.h"
4 #include "occ_import.h"
5 #include "fct_generateur_3d.h"
6 #include "mailleur0d.h"
7 #include "mailleur1d.h"
8 #include "mailleur2d.h"
9 #include "mailleur3d.h"
10 #include "mg_geometrie_outils.h"
11 #include "mailleur2d_ins_noeud.h"
12 #include "magic_application.h"
13 #include "mailleur2d_stl_refine_ins_noeud.h"
14
15 int main(int argc,char** argv)
16 {
17 std::vector<MAGIC_PARAMETRE_APPLICATION> lst;
18 MAGIC_PARAMETRE_APPLICATION p1(3,(char*)"-nummai",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de maillage - Defaut le premier");
19 MAGIC_PARAMETRE_APPLICATION p2(4,(char*)"-fichierpoint",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de points à inserer");
20 MAGIC_PARAMETRE_APPLICATION p3(5,(char*)"-nivopt",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Niveau de optimisation - Defaut 5");
21 MAGIC_PARAMETRE_APPLICATION p4(6,(char*)"-qualswap",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Si appliquer la qualité de swap-diagonal > 0");
22 MAGIC_PARAMETRE_APPLICATION p5(7,(char*)"-pinsansbc",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Insertion de noeuds sans des conditions limites");
23 MAGIC_PARAMETRE_APPLICATION p6(8,(char*)"-pinsavecbc",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Insertion de noeuds avec des conditions limites");
24 MAGIC_PARAMETRE_APPLICATION p7(9,(char*)"-stlrefconst",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Raffinement de fichier STL avec une taille constante");
25 MAGIC_PARAMETRE_APPLICATION p8(10,(char*)"-stlrefcartsiz",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Raffinement de fichier STL basée sur la taille de carte");
26 MAGIC_PARAMETRE_APPLICATION p9(11,(char*)"-fichiercarte",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de la taille de carte");
27 MAGIC_PARAMETRE_APPLICATION p10(12,(char*)"-stlpinsansbc",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Insertion de noeuds sans des conditions limites dans un fichier STL");
28 MAGIC_PARAMETRE_APPLICATION p11(13,(char*)"-stlpinsavecbc",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Insertion de noeuds avec des conditions limites dans un fichier STL");
29 MAGIC_PARAMETRE_APPLICATION p12(14,(char*)"-gentriqual",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The minimum quality limit for genearted triangles - Defaut 0.2");
30 MAGIC_PARAMETRE_APPLICATION p13(15,(char*)"-proxval",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The proximity value (very close; before using proximity)");
31 MAGIC_PARAMETRE_APPLICATION p14(16,(char*)"-proxedgeval",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The proximity value for points close to edges (very close; before using proximity)");
32 MAGIC_PARAMETRE_APPLICATION p15(17,(char*)"-mesh_size",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The global mesh_size of model mesh");
33 MAGIC_PARAMETRE_APPLICATION p16(18,(char*)"-gnifoutputfilename",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de gnifoutputfilename");
34 MAGIC_PARAMETRE_APPLICATION p17(19,(char*)"-insremtyp",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"if point insertion with type => insremtyp>0");
35
36
37 p5.ajouter_dependance(1);p5.ajouter_dependance(2);p5.ajouter_dependance(3);p5.ajouter_dependance(4);p5.ajouter_dependance(5);p5.ajouter_dependance(6);p5.ajouter_dependance(15);;p5.ajouter_dependance(16);
38 p6.ajouter_dependance(1);p6.ajouter_dependance(2);p6.ajouter_dependance(3);p6.ajouter_dependance(4);p6.ajouter_dependance(5);p6.ajouter_dependance(6);p6.ajouter_dependance(14);p6.ajouter_dependance(15);
39 p6.ajouter_dependance(16);p6.ajouter_dependance(17);p6.ajouter_dependance(18);p6.ajouter_dependance(19);
40 p7.ajouter_dependance(1);p7.ajouter_dependance(2);p7.ajouter_dependance(3);
41 p8.ajouter_dependance(1);p8.ajouter_dependance(2);p8.ajouter_dependance(3);p8.ajouter_dependance(11);
42 p10.ajouter_dependance(1);p10.ajouter_dependance(2);p10.ajouter_dependance(3);p10.ajouter_dependance(4);p10.ajouter_dependance(6);
43 p11.ajouter_dependance(1);p11.ajouter_dependance(2);p11.ajouter_dependance(3);p11.ajouter_dependance(4);p11.ajouter_dependance(6);
44 lst.push_back(p1);
45 lst.push_back(p2);
46 lst.push_back(p3);
47 lst.push_back(p4);
48 lst.push_back(p5);
49 lst.push_back(p6);
50 lst.push_back(p7);
51 lst.push_back(p8);
52 lst.push_back(p9);
53 lst.push_back(p10);
54 lst.push_back(p11);
55 lst.push_back(p12);
56 lst.push_back(p13);
57 lst.push_back(p14);
58 lst.push_back(p15);
59 lst.push_back(p16);
60 lst.push_back(p17);
61 MAGIC_APPLICATION app((char*)"Insertion de noeuds dans une triangulation integrée à une géométrie ou sans géométrie (fichier STL)",argc,argv,lst,true,true);
62 if (app.get_erreur()==true) return 0;
63
64 if(app.get_action()==7)
65 {
66 char magicfilename[3000];
67 char inspointfilename[3000];
68 char outputfilename[3000];
69 int meshno;
70 int nivopt;
71 int qualswap;
72 double proxval;
73 double proxedgeval;
74 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
75 app.recupere_parametre_string_avec_defaut(2,outputfilename,magicfilename);
76 app.recupere_parametre_int_avec_defaut(3,meshno,0);
77 app.recupere_parametre_string(4,inspointfilename,(char*)"Fichier de points manquant");
78 app.recupere_parametre_int_avec_defaut(5,nivopt,5);
79 app.recupere_parametre_int(6,qualswap,(char*)"Value de qualswap manquant");
80 app.recupere_parametre_double(15,proxval,(char*)"value du proxval manquant");
81 app.recupere_parametre_double(16,proxedgeval,(char*)"value du proxval manquant");
82 if (app.get_erreur()==true) return 0;
83 MAILLEUR2D_INS_NOEUD pinse(magicfilename,meshno,inspointfilename,outputfilename,nivopt,qualswap,proxval,proxedgeval);
84 pinse.active_affichage(app.affiche);
85 pinse.ins_points();
86 app.affiche((char*)"Fin");
87 }
88 if(app.get_action()==8)
89 {
90 char magicfilename[3000];
91 char inspointfilename[3000];
92 char outputfilename[3000];
93 int meshno;
94 int nivopt;
95 int qualswap;
96 double gentriqual;
97 double proxval;
98 double proxedgeval;
99 double mesh_size;
100 char gnifoutputfilename[3000];
101 int insremtyp;
102 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
103 app.recupere_parametre_string_avec_defaut(2,outputfilename,magicfilename);
104 app.recupere_parametre_int_avec_defaut(3,meshno,0);
105 app.recupere_parametre_string(4,inspointfilename,(char*)"Fichier de points manquant avec des conditions limites");
106 app.recupere_parametre_int_avec_defaut(5,nivopt,5);
107 app.recupere_parametre_int(6,qualswap,(char*)"Value de qualswap manquant");
108 app.recupere_parametre_double_avec_defaut(14,gentriqual,0.2);
109 app.recupere_parametre_double(15,proxval,(char*)"value du proxval manquant");
110 app.recupere_parametre_double(16,proxedgeval,(char*)"value du proxedgeval manquant");
111 app.recupere_parametre_double(17,mesh_size,(char*)"value du mesh_size manquant");
112 app.recupere_parametre_string(18,gnifoutputfilename,(char*)"Fichier de gnifoutputfilename");
113 app.recupere_parametre_int(19,insremtyp,(char*)"Value de insremtyp manquant");
114
115 if (app.get_erreur()==true) return 0;
116 MAILLEUR2D_INS_NOEUD pinse(magicfilename,meshno,inspointfilename,outputfilename,nivopt,qualswap,proxval,proxedgeval);
117 pinse.active_affichage(app.affiche);
118 pinse.ins_point_withbc(gentriqual,mesh_size,gnifoutputfilename,insremtyp);
119 app.affiche((char*)"Fin");
120 }
121
122 if(app.get_action()==9)
123 {
124 char fichierstlmagic[3000];
125 char fichierout[3000];
126 int nummai;
127 app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant");
128 app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
129 app.recupere_parametre_int_avec_defaut(3,nummai,0);
130 if (app.get_erreur()==true) return 0;
131
132 MAILLEUR2D_STL_REFINE_INS_NOEUD stlrf(fichierstlmagic,fichierout,nummai);
133 stlrf.active_affichage(app.affiche);
134 stlrf.stl_refining();
135 app.affiche((char*)"Fin");
136 }
137
138 if(app.get_action()==10)
139 {
140 char fichierstlmagic[3000];
141 char fichierout[3000];
142 char fichiercarte[3000];
143 int nummai;
144
145 app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant");
146 app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
147 app.recupere_parametre_int_avec_defaut(3,nummai,0);
148 app.recupere_parametre_string(11,fichiercarte,(char*)"Fichier de de la taille de carte manquant");
149
150 if (app.get_erreur()==true) return 0;
151 MAILLEUR2D_STL_REFINE_INS_NOEUD stlrfszmp(fichierstlmagic,fichierout,fichiercarte,nummai);
152 stlrfszmp.active_affichage(app.affiche);
153 stlrfszmp.stl_sizmpref();
154 app.affiche((char*)"Fin");
155 }
156
157 if(app.get_action()==12)
158 {
159 char fichierstlmagic[3000];
160 char fichierinspoint[3000];
161 char fichierout[3000];
162 int nummai;
163 int qualswap;
164 app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant, fichier stl.magic");
165 app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
166 app.recupere_parametre_int_avec_defaut(3,nummai,0);
167 app.recupere_parametre_string(4,fichierinspoint,(char*)"Fichier de points manquant");
168 app.recupere_parametre_int(6,qualswap,(char*)"Value de qualswap manquant");
169 if (app.get_erreur()==true) return 0;
170 MAILLEUR2D_STL_REFINE_INS_NOEUD stlpinse(fichierstlmagic,fichierinspoint,fichierout,nummai,qualswap);
171 stlpinse.active_affichage(app.affiche);
172 stlpinse.stlins_points();
173 app.affiche((char*)"Fin");
174 }
175 if(app.get_action()==13)
176 {
177 char fichierstlmagic[3000];
178 char fichierinspoint[3000];
179 char fichierout[3000];
180 int nummai;
181 int qualswap;
182 app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant, fichier stl.magic");
183 app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
184 app.recupere_parametre_int_avec_defaut(3,nummai,0);
185 app.recupere_parametre_string(4,fichierinspoint,(char*)"Fichier de points manquant");
186 app.recupere_parametre_int(6,qualswap,(char*)"Value de qualswap manquant");
187 if (app.get_erreur()==true) return 0;
188 MAILLEUR2D_STL_REFINE_INS_NOEUD stlpinse(fichierstlmagic,fichierinspoint,fichierout,nummai,qualswap);
189 stlpinse.active_affichage(app.affiche);
190 stlpinse.stlins_point_withbc();
191 app.affiche((char*)"Fin");
192 }
193
194 return 0;
195 }