ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/app/criaqoperation/src/main.cpp
Revision: 822
Committed: Sun Sep 4 20:09:12 2016 UTC (8 years, 11 months ago) by sattarpa
File size: 30291 byte(s)
Log Message:
Ajouter option de search-radius pour 'meshdistance_compare' 

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 "mailleur.h"
7 #include "mailleur0d.h"
8 #include "mailleur1d.h"
9 #include "mailleur2d.h"
10 #include "mailleur3d.h"
11 #include "mg_geometrie_outils.h"
12 #include "magic_application.h"
13 #include "criaqoperators.h"
14
15 int main(int argc,char** argv)
16 {
17 std::vector<MAGIC_PARAMETRE_APPLICATION> lst;
18 MAGIC_PARAMETRE_APPLICATION p1(2,(char*)"-outputfilename",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de output");
19 MAGIC_PARAMETRE_APPLICATION p2(3,(char*)"-elementxtoutfile",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de elementxtoutfile");
20 MAGIC_PARAMETRE_APPLICATION p3(4,(char*)"-nodtxtoutfile",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de nodtxtoutfile");
21 MAGIC_PARAMETRE_APPLICATION p4(5,(char*)"-nummai",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de maillage - Defaut le premier");
22 MAGIC_PARAMETRE_APPLICATION p5(6,(char*)"-bumpndid",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"the id no of node for making bump");
23 MAGIC_PARAMETRE_APPLICATION p6(7,(char*)"-surfmaker_e1",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for surfmaker_e1");
24 MAGIC_PARAMETRE_APPLICATION p7(8,(char*)"-surfmaker_e2",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for surfmaker_e2");
25 MAGIC_PARAMETRE_APPLICATION p8(9,(char*)"-surfmaker_e3",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for surfmaker_e3");
26 MAGIC_PARAMETRE_APPLICATION p9(10,(char*)"-gnifformatmaker",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for gnifformatmaker");
27 MAGIC_PARAMETRE_APPLICATION p10(11,(char*)"-rmovscnprtfromdefrmdcad",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for rmovscnprtfromdefrmdcad");
28 MAGIC_PARAMETRE_APPLICATION p11(12,(char*)"-msh2dmakerfrommsh3d",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for msh2dmakerfrommsh3d");
29 MAGIC_PARAMETRE_APPLICATION p12(13,(char*)"-bumpmaker",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for bumpmaker");
30 MAGIC_PARAMETRE_APPLICATION p13(14,(char*)"-surfmaker_e2t",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for surfmaker_e2t");
31 MAGIC_PARAMETRE_APPLICATION p14(15,(char*)"-bumptip",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The hight of bumptip");
32 MAGIC_PARAMETRE_APPLICATION p15(16,(char*)"-importgnifmesh",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for import GNIF mesh to MAGIC format");
33 MAGIC_PARAMETRE_APPLICATION p16(17,(char*)"-gniftriangulationfile",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de gniftriangulationfile");
34 MAGIC_PARAMETRE_APPLICATION p17(18,(char*)"-vm_analysis",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action based on V.M. stress, to remove sample points on the defect areas and generate a new insert point list");
35 MAGIC_PARAMETRE_APPLICATION p18(19,(char*)"-femnummai",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de FEM maillage - Defaut le premier");
36 MAGIC_PARAMETRE_APPLICATION p19(20,(char*)"-femsolid",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro id de FEM SOLUTION");
37 MAGIC_PARAMETRE_APPLICATION p20(21,(char*)"-gnifinspointfile",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de gnifinspointfile");
38 MAGIC_PARAMETRE_APPLICATION p21(22,(char*)"-femsubsolno",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de FEM SUB_SOLUTION (0,1,2,...)");
39 MAGIC_PARAMETRE_APPLICATION p22(23,(char*)"-out_gnifinspointfile_removondefect",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de out_gnifinspointfile_removondefect");
40 MAGIC_PARAMETRE_APPLICATION p23(24,(char*)"-mshdistance_compare",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for comparing 2 mesheah by giving the distance based on ref. mesh");
41 MAGIC_PARAMETRE_APPLICATION p24(25,(char*)"-referencemagicfilename",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de referencemagicfilename");
42 MAGIC_PARAMETRE_APPLICATION p25(26,(char*)"-comparemagicfilename",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de comparemagicfilename");
43 MAGIC_PARAMETRE_APPLICATION p26(27,(char*)"-refmeshno",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de refmesh - Defaut le premier");
44 MAGIC_PARAMETRE_APPLICATION p27(28,(char*)"-compmeshno",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de compmesh - Defaut le premier");
45 MAGIC_PARAMETRE_APPLICATION p28(29,(char*)"-outputcomparefile",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de outputcomparefile");
46 MAGIC_PARAMETRE_APPLICATION p29(30,(char*)"-deformcorressmai",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for add defprmed mgmesh with correspondence to the main mesh");
47 MAGIC_PARAMETRE_APPLICATION p30(31,(char*)"-numsol1",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de solution1");
48 MAGIC_PARAMETRE_APPLICATION p31(32,(char*)"-numsol2",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de solution2");
49 MAGIC_PARAMETRE_APPLICATION p32(33,(char*)"-numsol3",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de solution3");
50 MAGIC_PARAMETRE_APPLICATION p33(34,(char*)"-numchamp1",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de champ1");
51 MAGIC_PARAMETRE_APPLICATION p34(35,(char*)"-numchamp2",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de champ2");
52 MAGIC_PARAMETRE_APPLICATION p35(36,(char*)"-numchamp3",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Numéro de champ3");
53 MAGIC_PARAMETRE_APPLICATION p36(37,(char*)"-coefdef",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The coefficient value for deformation");
54 MAGIC_PARAMETRE_APPLICATION p37(38,(char*)"-curvtur_crit_remvsmp",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action based on curvature, to remove sample points on the defect areas and generate a new insert point list");
55 MAGIC_PARAMETRE_APPLICATION p38(39,(char*)"-correspondfilename",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de correspondfilename");
56 MAGIC_PARAMETRE_APPLICATION p39(40,(char*)"-out_gnifinspointfile_removondefect",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de out_gnifinspointfile_removondefect");
57 MAGIC_PARAMETRE_APPLICATION p40(41,(char*)"-search_radius",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The value for search_radius");
58 MAGIC_PARAMETRE_APPLICATION p41(42,(char*)"-curvdif_coef",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The coefficient value for curvdif_coef");
59 MAGIC_PARAMETRE_APPLICATION p42(43,(char*)"-vm_coef",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The coefficient value for vm_coef");
60 MAGIC_PARAMETRE_APPLICATION p43(44,(char*)"-gmsh_affiche",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"IF gmsh_affiche=1(diff), =2(CAD & defCAD relt), =3(CAD & defCAD)");
61 MAGIC_PARAMETRE_APPLICATION p44(45,(char*)"-relet_search_rad",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The value for relet_search_rad");
62 MAGIC_PARAMETRE_APPLICATION p45(46,(char*)"-relet_curvature",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"if relet_curvature>0 => relet_curvature is calculated");
63 MAGIC_PARAMETRE_APPLICATION p46(47,(char*)"-samplepoints1",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de samplepoints1");
64 MAGIC_PARAMETRE_APPLICATION p47(48,(char*)"-samplepoints2",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de samplepoints2");
65 MAGIC_PARAMETRE_APPLICATION p48(49,(char*)"-sortedsmplpnts",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de sortedsmplpnts");
66 MAGIC_PARAMETRE_APPLICATION p49(50,(char*)"-smplpcompare",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for compare between two sets of sample points");
67 MAGIC_PARAMETRE_APPLICATION p50(51,(char*)"-bumparea_calcul",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for calculate area of bump");
68 MAGIC_PARAMETRE_APPLICATION p51(52,(char*)"-mgsolid",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"MG solution id");
69 MAGIC_PARAMETRE_APPLICATION p52(53,(char*)"-tolerance",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"deformation tolerance value");
70 MAGIC_PARAMETRE_APPLICATION p53(54,(char*)"-defnodid",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"defnodid");
71 MAGIC_PARAMETRE_APPLICATION p54(55,(char*)"-solfilename",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de solfilename");
72 MAGIC_PARAMETRE_APPLICATION p55(56,(char*)"-sp_proj_oncad",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for projection sample points on CAD model, with geometry");
73 MAGIC_PARAMETRE_APPLICATION p56(57,(char*)"-sp_proj_onscan",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for projection sample points on SCAN model, without geometry");
74 MAGIC_PARAMETRE_APPLICATION p57(58,(char*)"-sp_proj_oncad_scan",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action for projection sample points on CAD andSCAN model_ return SP and DV, without geometry");
75 MAGIC_PARAMETRE_APPLICATION p58(59,(char*)"-ajouter_nois_normdir",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action pour ajouter des bruilles dans le maillage scanee");
76 MAGIC_PARAMETRE_APPLICATION p59(60,(char*)"-noisefile",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier des bruilles");
77 MAGIC_PARAMETRE_APPLICATION p60(61,(char*)"-boolgeometric",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Boolien si la maillage et geometric (0) ou FEM (else 0)");
78 MAGIC_PARAMETRE_APPLICATION p61(62,(char*)"-ks_bumpnds",MAGIC_PARAMETRE_APPLICATION::ACTION,(char*)"Action pour generating data for KS test - actual and estimated defect ");
79 MAGIC_PARAMETRE_APPLICATION p62(63,(char*)"-magicfilename_actual",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de magicfilename_actual");
80 MAGIC_PARAMETRE_APPLICATION p63(64,(char*)"-magicfilename_estimate",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de magicfilename_estimate");
81 MAGIC_PARAMETRE_APPLICATION p64(65,(char*)"-comp_threshold",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"comp_threshold value");
82 MAGIC_PARAMETRE_APPLICATION p65(66,(char*)"-solidact",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"solidact");
83 MAGIC_PARAMETRE_APPLICATION p66(67,(char*)"-solidest",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"solidest");
84 MAGIC_PARAMETRE_APPLICATION p67(68,(char*)"-ksoloutput_act",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de ksoloutput_act");
85 MAGIC_PARAMETRE_APPLICATION p68(69,(char*)"-ksoloutput_est",MAGIC_PARAMETRE_APPLICATION::STRING,(char*)"Nom du fichier de ksoloutput_est");
86 MAGIC_PARAMETRE_APPLICATION p69(70,(char*)"-ndmaxbumpidact",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"ndmaxbumpidact");
87 MAGIC_PARAMETRE_APPLICATION p70(71,(char*)"-ndmaxbumpidest",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"ndmaxbumpidest");
88 MAGIC_PARAMETRE_APPLICATION p71(72,(char*)"-indiv_actref",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"indiv_actref");
89
90 p6.ajouter_dependance(1);p6.ajouter_dependance(2);p6.ajouter_dependance(5);
91 p7.ajouter_dependance(1);p7.ajouter_dependance(2);p7.ajouter_dependance(5);
92 p8.ajouter_dependance(1);p8.ajouter_dependance(2);p8.ajouter_dependance(5);
93 p9.ajouter_dependance(1);p9.ajouter_dependance(5);p9.ajouter_dependance(3);p9.ajouter_dependance(4);p9.ajouter_dependance(61);
94 p10.ajouter_dependance(1);p10.ajouter_dependance(2);p10.ajouter_dependance(5);
95 p11.ajouter_dependance(1);p11.ajouter_dependance(2);p11.ajouter_dependance(5);
96 p12.ajouter_dependance(1);p12.ajouter_dependance(2);p12.ajouter_dependance(5);p12.ajouter_dependance(6);p12.ajouter_dependance(15);
97 p13.ajouter_dependance(1);p13.ajouter_dependance(2);p13.ajouter_dependance(5);
98 p15.ajouter_dependance(2);p15.ajouter_dependance(17);
99 p17.ajouter_dependance(1);p17.ajouter_dependance(19);p17.ajouter_dependance(20);p17.ajouter_dependance(22);p17.ajouter_dependance(21);p17.ajouter_dependance(23);p17.ajouter_dependance(41);p17.ajouter_dependance(43);
100 p23.ajouter_dependance(55);p23.ajouter_dependance(25);p23.ajouter_dependance(26);p23.ajouter_dependance(27);p23.ajouter_dependance(28);p23.ajouter_dependance(29);
101 p29.ajouter_dependance(1);p29.ajouter_dependance(5);p29.ajouter_dependance(31);p29.ajouter_dependance(32);p29.ajouter_dependance(33);p29.ajouter_dependance(34);p29.ajouter_dependance(35);p29.ajouter_dependance(36);p29.ajouter_dependance(37);p29.ajouter_dependance(39);
102 p37.ajouter_dependance(1);p37.ajouter_dependance(39);p37.ajouter_dependance(21);p37.ajouter_dependance(40);p37.ajouter_dependance(41);p37.ajouter_dependance(42);p37.ajouter_dependance(44);p37.ajouter_dependance(45);p37.ajouter_dependance(46);
103 p49.ajouter_dependance(47);p49.ajouter_dependance(48);p49.ajouter_dependance(49);
104 p50.ajouter_dependance(1);p50.ajouter_dependance(2);p50.ajouter_dependance(5);p50.ajouter_dependance(52);p50.ajouter_dependance(53);p50.ajouter_dependance(54);
105 p55.ajouter_dependance(1);p55.ajouter_dependance(5);p55.ajouter_dependance(47);
106 p56.ajouter_dependance(1);p56.ajouter_dependance(5);p56.ajouter_dependance(47);
107 p57.ajouter_dependance(25);p57.ajouter_dependance(26);p57.ajouter_dependance(27);p57.ajouter_dependance(28);p57.ajouter_dependance(47);p57.ajouter_dependance(48);p57.ajouter_dependance(49);
108 p58.ajouter_dependance(1);p58.ajouter_dependance(2);p58.ajouter_dependance(5);p58.ajouter_dependance(60);
109 p61.ajouter_dependance(63);p61.ajouter_dependance(64);p61.ajouter_dependance(65);p61.ajouter_dependance(66);p61.ajouter_dependance(67);p61.ajouter_dependance(68);p61.ajouter_dependance(69);p61.ajouter_dependance(70);p61.ajouter_dependance(71);p61.ajouter_dependance(72);
110 lst.push_back(p1);
111 lst.push_back(p2);
112 lst.push_back(p3);
113 lst.push_back(p4);
114 lst.push_back(p5);
115 lst.push_back(p6);
116 lst.push_back(p7);
117 lst.push_back(p8);
118 lst.push_back(p9);
119 lst.push_back(p10);
120 lst.push_back(p11);
121 lst.push_back(p12);
122 lst.push_back(p13);
123 lst.push_back(p14);
124 lst.push_back(p15);
125 lst.push_back(p16);
126 lst.push_back(p17);
127 lst.push_back(p18);
128 lst.push_back(p19);
129 lst.push_back(p20);
130 lst.push_back(p21);
131 lst.push_back(p22);
132 lst.push_back(p23);
133 lst.push_back(p24);
134 lst.push_back(p25);
135 lst.push_back(p26);
136 lst.push_back(p27);
137 lst.push_back(p28);
138 lst.push_back(p29);
139 lst.push_back(p30);
140 lst.push_back(p31);
141 lst.push_back(p32);
142 lst.push_back(p33);
143 lst.push_back(p34);
144 lst.push_back(p35);
145 lst.push_back(p36);
146 lst.push_back(p37);
147 lst.push_back(p38);
148 lst.push_back(p39);
149 lst.push_back(p40);
150 lst.push_back(p41);
151 lst.push_back(p42);
152 lst.push_back(p43);
153 lst.push_back(p44);
154 lst.push_back(p45);
155 lst.push_back(p46);
156 lst.push_back(p47);
157 lst.push_back(p48);
158 lst.push_back(p49);
159 lst.push_back(p50);
160 lst.push_back(p51);
161 lst.push_back(p52);
162 lst.push_back(p53);
163 lst.push_back(p54);
164 lst.push_back(p55);
165 lst.push_back(p56);
166 lst.push_back(p57);
167 lst.push_back(p58);
168 lst.push_back(p59);
169 lst.push_back(p60);
170 lst.push_back(p61);lst.push_back(p62);lst.push_back(p63);lst.push_back(p64);lst.push_back(p65);lst.push_back(p66);lst.push_back(p67);lst.push_back(p68);lst.push_back(p69);lst.push_back(p70);lst.push_back(p71);
171
172 MAGIC_APPLICATION app((char*)"Tests preparation for CRIAQ project- MANU501",argc,argv,lst,true,false);
173 if (app.get_erreur()==true) return 0;
174
175 if(app.get_action()==62)
176 {
177 char magicfilename_actual[3000];
178 char magicfilename_estimate[3000];
179 double comp_threshold;
180 int solidact;
181 int solidest;
182 char ksoloutput_act[3000];
183 char ksoloutput_est[3000];
184 int ndmaxbumpidact;
185 int ndmaxbumpidest;
186 int indiv_actref;
187 app.recupere_parametre_string(63,magicfilename_actual,(char*)"Fichier magicfilename_actual manquant");
188 app.recupere_parametre_string(64,magicfilename_estimate,(char*)"Fichier magicfilename_estimate manquant");
189 app.recupere_parametre_int(66,solidact,(char*)"solidact manquant");
190 app.recupere_parametre_int(67,solidest,(char*)"solidest manquant");
191 app.recupere_parametre_double(65,comp_threshold,(char*)"comp_threshold manquant");
192 app.recupere_parametre_string(68,ksoloutput_act,(char*)"Fichier ksoloutput_act manquant");
193 app.recupere_parametre_string(69,ksoloutput_est,(char*)"Fichier ksoloutput_est manquant");
194 app.recupere_parametre_int(70,ndmaxbumpidact,(char*)"ndmaxbumpidact manquant");
195 app.recupere_parametre_int(71,ndmaxbumpidest,(char*)"ndmaxbumpidest manquant");
196 app.recupere_parametre_int(72,indiv_actref,(char*)"indiv_actref manquant");
197
198 if (app.get_erreur()==true) return 0;
199 CRIAQOPERATORS criaq;
200 criaq.ksol_bumpnds(magicfilename_actual,magicfilename_estimate,comp_threshold,solidact,solidest,ksoloutput_act,ksoloutput_est,ndmaxbumpidact,ndmaxbumpidest,indiv_actref);
201 app.affiche((char*)"Fin");
202 //(char* magicfilename_actual,char* magicfilename_estimate,double comp_threshold,int solidact,int solidest,char* ksoloutput_act,char* ksoloutput_est,int ndmaxbumpidact,int ndmaxbumpidest,int indiv_actref);
203
204
205 }
206
207 if(app.get_action()==50)
208 {
209 char samplepoints1[3000];
210 char samplepoints2[3000];
211 char sortedsmplpnts[3000];
212 app.recupere_parametre_string(47,samplepoints1,(char*)"Fichier samplepoints1 manquant");
213 app.recupere_parametre_string(48,samplepoints2,(char*)"Fichier samplepoints2 manquant");
214 app.recupere_parametre_string(49,sortedsmplpnts,(char*)"Fichier sortedsmplpnts manquant");
215 if (app.get_erreur()==true) return 0;
216 CRIAQOPERATORS criaq;
217 //criaq.active_affichage(app.affiche);
218 criaq.samplepoints_compare(samplepoints1,samplepoints2,sortedsmplpnts);
219 app.affiche((char*)"Fin");
220 }
221 if(app.get_action()==7)
222 {
223 char magicfilename[3000];
224 char outputfilename[3000];
225 int meshno;
226 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
227 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
228 app.recupere_parametre_int_avec_defaut(5,meshno,0);
229 if (app.get_erreur()==true) return 0;
230 CRIAQOPERATORS criaq;
231 //criaq.active_affichage(app.affiche);
232 criaq.surfmaker_e1(outputfilename,meshno,magicfilename);
233 app.affiche((char*)"Fin");
234 }
235 if(app.get_action()==8)
236 {
237 char magicfilename[3000];
238 char outputfilename[3000];
239 int meshno;
240 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
241 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
242 app.recupere_parametre_int_avec_defaut(5,meshno,0);
243 if (app.get_erreur()==true) return 0;
244 CRIAQOPERATORS criaq;
245 //criaq.active_affichage(app.affiche);
246 criaq.surfmaker_e2(outputfilename,meshno,magicfilename);
247 app.affiche((char*)"Fin");
248 }
249 if(app.get_action()==14)
250 {
251 char magicfilename[3000];
252 char outputfilename[3000];
253 int meshno;
254 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
255 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
256 app.recupere_parametre_int_avec_defaut(5,meshno,0);
257 if (app.get_erreur()==true) return 0;
258 CRIAQOPERATORS criaq;
259 //criaq.active_affichage(app.affiche);
260 criaq.surfmaker_e2t(outputfilename,meshno,magicfilename);
261 app.affiche((char*)"Fin");
262 }
263 if(app.get_action()==9)
264 {
265 char magicfilename[3000];
266 char outputfilename[3000];
267 int meshno;
268 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
269 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
270 app.recupere_parametre_int_avec_defaut(5,meshno,0);
271 if (app.get_erreur()==true) return 0;
272 CRIAQOPERATORS criaq;
273 //criaq.active_affichage(app.affiche);
274 criaq.surfmaker_e3(outputfilename,meshno,magicfilename);
275 app.affiche((char*)"Fin");
276 }
277 if(app.get_action()==10)
278 {
279 char magicfilename[3000];
280 char elementxtoutfile[3000];
281 char nodtxtoutfile[3000];
282 int meshno;
283 int geometric;
284 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
285 app.recupere_parametre_string(3,elementxtoutfile,(char*)"Fichier entrant manquant");
286 app.recupere_parametre_string(4,nodtxtoutfile,(char*)"Fichier entrant manquant");
287 app.recupere_parametre_int_avec_defaut(5,meshno,0);
288 app.recupere_parametre_int(61,geometric,(char*)"bool geometric true ou false manquant");
289 if (app.get_erreur()==true) return 0;
290 CRIAQOPERATORS criaq;
291 //criaq.active_affichage(app.affiche);
292 criaq.gnifformatmaker(elementxtoutfile,nodtxtoutfile,meshno,magicfilename,geometric);
293 app.affiche((char*)"Fin");
294 }
295 if(app.get_action()==11)
296 {
297 char magicfilename[3000];
298 char outputfilename[3000];
299 int meshno;
300 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
301 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
302 app.recupere_parametre_int_avec_defaut(5,meshno,0);
303 if (app.get_erreur()==true) return 0;
304 CRIAQOPERATORS criaq;
305 //criaq.active_affichage(app.affiche);
306 criaq.rmovscnprtfromdefrmdcad(outputfilename,meshno,magicfilename);
307 app.affiche((char*)"Fin");
308 }
309 if(app.get_action()==12)
310 {
311 char magicfilename[3000];
312 char outputfilename[3000];
313 int meshno;
314 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
315 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
316 app.recupere_parametre_int_avec_defaut(5,meshno,0);
317 if (app.get_erreur()==true) return 0;
318 CRIAQOPERATORS criaq;
319 //criaq.active_affichage(app.affiche);
320 criaq.msh2dmakerfrommsh3d(outputfilename,meshno,magicfilename);
321 app.affiche((char*)"Fin");
322 }
323 if(app.get_action()==13)
324 {
325 char magicfilename[3000];
326 char outputfilename[3000];
327 int bumpndid;
328 int meshno;
329 double bumptip;
330 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
331 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
332 app.recupere_parametre_int_avec_defaut(5,meshno,0);
333 app.recupere_parametre_int(6,bumpndid,(char*)"bumpndid manquant");
334 app.recupere_parametre_double(15,bumptip,(char*)"bumptip manquant");
335 if (app.get_erreur()==true) return 0;
336 CRIAQOPERATORS criaq;
337 //criaq.active_affichage(app.affiche);
338 criaq.bumpmaker(outputfilename,bumpndid,bumptip,meshno,magicfilename);
339 app.affiche((char*)"Fin");
340 }
341 if(app.get_action()==16)
342 {
343 char outputfilename[3000];
344 char gniftriangulationfile[3000];
345 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
346 app.recupere_parametre_string(17,gniftriangulationfile,(char*)"Fichier entrant manquant");
347
348 if (app.get_erreur()==true) return 0;
349 CRIAQOPERATORS criaq;
350 //criaq.active_affichage(app.affiche);
351 criaq.import_triangulation_gnif(outputfilename,gniftriangulationfile);
352 app.affiche((char*)"Fin");
353 }
354 if(app.get_action()==18)
355 {
356 int femnummai;
357 char magicfilename[3000];
358 int femsolid;
359 int femsubsolno;
360 char gnifinspointfile[3000];
361 char out_gnifinspointfile_removondefect[3000];
362 double search_radius;
363 double vm_coef;
364 app.recupere_parametre_int_avec_defaut(19,femnummai,0);
365 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
366 app.recupere_parametre_int(20,femsolid,(char*)"femsolno manquant");
367 app.recupere_parametre_int(22,femsubsolno,(char*)"femsubsolno manquant");
368 app.recupere_parametre_string(21,gnifinspointfile,(char*)"Fichier insertpoints");
369 app.recupere_parametre_string(23,out_gnifinspointfile_removondefect,(char*)"Fichier soltxtoutfile");
370 app.recupere_parametre_double(41,search_radius,(char*)"search_radius is missed");
371 app.recupere_parametre_double(43,vm_coef,(char*)"vm_coef is missed");
372
373 if (app.get_erreur()==true) return 0;
374 CRIAQOPERATORS criaq;
375 //criaq.active_affichage(app.affiche);
376 criaq.vm_crit_remvsmp(femnummai,magicfilename,femsolid,femsubsolno,gnifinspointfile,out_gnifinspointfile_removondefect,search_radius,vm_coef);
377 app.affiche((char*)"Fin");
378 }
379 if(app.get_action()==24)
380 {
381 char referencemagicfilename[3000];
382 char comparemagicfilename[3000];
383 int refmeshno;
384 int compmeshno;
385 char outputcomparefile[3000];
386 char solfilename[3000];
387 double search_radius;
388
389 app.recupere_parametre_string(25,referencemagicfilename,(char*)"Fichier referencemagicfilename");
390 app.recupere_parametre_string(26,comparemagicfilename,(char*)"Fichier comparemagicfilename");
391 app.recupere_parametre_int_avec_defaut(27,refmeshno,0);
392 app.recupere_parametre_int_avec_defaut(28,compmeshno,0);
393 app.recupere_parametre_string(29,outputcomparefile,(char*)"Fichier outputcomparefile");
394 app.recupere_parametre_string(55,solfilename,(char*)"Fichier solfilename");
395 app.recupere_parametre_double(41,search_radius,(char*)"search_radius is missed");
396 if (app.get_erreur()==true) return 0;
397 CRIAQOPERATORS criaq;
398 //criaq.active_affichage(app.affiche);
399 criaq.meshdistance_compare(referencemagicfilename,refmeshno,comparemagicfilename,compmeshno,outputcomparefile,solfilename,search_radius);
400 app.affiche((char*)"Fin");
401 }
402 if(app.get_action()==30)
403 {
404 char magicfilename[3000];
405 char correspondfilename[3000];
406 int meshno;
407 int numsol1;
408 int numsol2;
409 int numsol3;
410 int numchamp1;
411 int numchamp2;
412 int numchamp3;
413 double coef;
414 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier referencemagicfilename");
415 app.recupere_parametre_int_avec_defaut(5,meshno,0);
416 app.recupere_parametre_int(31,numsol1,(char*)"numsol1 is missed");
417 app.recupere_parametre_int(32,numsol2,(char*)"numsol2 is missed");
418 app.recupere_parametre_int(33,numsol3,(char*)"numsol3 is missed");
419 app.recupere_parametre_int(34,numchamp1,(char*)"numchamp1 is missed");
420 app.recupere_parametre_int(35,numchamp2,(char*)"numchamp2 is missed");
421 app.recupere_parametre_int(36,numchamp3,(char*)"numchamp3 is missed");
422 app.recupere_parametre_double(37,coef,(char*)"coef is missed");
423 app.recupere_parametre_string(39,correspondfilename,(char*)"Fichier referencemagicfilename");
424 if (app.get_erreur()==true) return 0;
425 CRIAQOPERATORS criaq;
426 criaq.deformed_correspond_mgmaiadd(magicfilename,meshno,numsol1,numsol2,numsol3,numchamp1,numchamp2,numchamp3,coef,correspondfilename);
427 //criaq.active_affichage(app.affiche);
428 app.affiche((char*)"Fin");
429 }
430 if(app.get_action()==38)
431 {
432 char magicfilename[3000];
433 char correspondfilename[3000];
434 char gnifinspointfile[3000];
435 char out_gnifinspointfile_removondefect[3000];
436 double search_radius;
437 double curvdif_coef;
438 int gmsh_affiche;
439 double relet_search_rad;
440 int relet_curvature;
441 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier referencemagicfilename");
442 app.recupere_parametre_string(39,correspondfilename,(char*)"Fichier referencemagicfilename");
443 app.recupere_parametre_string(21,gnifinspointfile,(char*)"Fichier referencemagicfilename");
444 app.recupere_parametre_string(40,out_gnifinspointfile_removondefect,(char*)"Fichier referencemagicfilename");
445 app.recupere_parametre_double(41,search_radius,(char*)"search_radius is missed");
446 app.recupere_parametre_double(42,curvdif_coef,(char*)"curvdif_coef is missed");
447 app.recupere_parametre_int_avec_defaut(44,gmsh_affiche,0);
448 app.recupere_parametre_double(45,relet_search_rad,(char*)"relet_search_rad is missed");
449 app.recupere_parametre_int(46,relet_curvature,(char*)"relet_curvature is missed");
450 if (app.get_erreur()==true) return 0;
451 CRIAQOPERATORS criaq;
452 criaq.curvtur_crit_remvsmp(magicfilename,correspondfilename,gnifinspointfile,out_gnifinspointfile_removondefect,search_radius,curvdif_coef,gmsh_affiche,relet_search_rad,relet_curvature);
453 //criaq.active_affichage(app.affiche);
454 app.affiche((char*)"Fin");
455 }
456 if(app.get_action()==51)
457 {
458 char magicfilename[3000];
459 int nummai;
460 int mgsolid;
461 double tolerance;
462 char outputfilename[3000];
463 int defnodid;
464 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier referencemagicfilename");
465 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
466 app.recupere_parametre_int_avec_defaut(5,nummai,0);
467 app.recupere_parametre_int(52,mgsolid,(char*)"mgsolid manquant");
468 app.recupere_parametre_double(53,tolerance,(char*)"tolerance manquant");
469 app.recupere_parametre_int(54,defnodid,(char*)"defnodid manquant");
470
471 if (app.get_erreur()==true) return 0;
472 CRIAQOPERATORS criaq;
473 criaq.bumparea_calcul(magicfilename,nummai,mgsolid,tolerance,outputfilename,defnodid);
474 //criaq.active_affichage(app.affiche);
475 app.affiche((char*)"Fin");
476 }
477 if(app.get_action()==56)
478 {
479 char magicfilename[3000];
480 int nummai;
481 char samplepoints1[3000];
482 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier referencemagicfilename");
483 app.recupere_parametre_int_avec_defaut(5,nummai,0);
484 app.recupere_parametre_string(47,samplepoints1,(char*)"Fichier samplepoints1 manquant");
485
486 if (app.get_erreur()==true) return 0;
487 CRIAQOPERATORS criaq;
488 criaq.sp_project_onCAD(magicfilename,nummai,samplepoints1);
489 //criaq.active_affichage(app.affiche);
490 app.affiche((char*)"Fin");
491 }
492 if(app.get_action()==57)
493 {
494 char magicfilename[3000];
495 int nummai;
496 char samplepoints1[3000];
497 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier referencemagicfilename");
498 app.recupere_parametre_int_avec_defaut(5,nummai,0);
499 app.recupere_parametre_string(47,samplepoints1,(char*)"Fichier samplepoints1 manquant");
500
501 if (app.get_erreur()==true) return 0;
502 CRIAQOPERATORS criaq;
503 criaq.sp_project_onSCAN(magicfilename,nummai,samplepoints1);
504 //criaq.active_affichage(app.affiche);
505 app.affiche((char*)"Fin");
506 }
507
508 if(app.get_action()==58)
509 {
510 char magicfilenamecad[3000];
511 int nummaicad;
512 char samplepointscad[3000];
513 char magicfilenamescn[3000];
514 int nummaiscn;
515 char samplepointsscn[3000];
516 char outputspbcfilename[3000];
517 app.recupere_parametre_string(25,magicfilenamecad,(char*)"Fichier magicfilenamecad");
518 app.recupere_parametre_string(26,magicfilenamescn,(char*)"Fichier magicfilenamescn");
519 app.recupere_parametre_int_avec_defaut(27,nummaicad,0);
520 app.recupere_parametre_int_avec_defaut(28,nummaiscn,0);
521 app.recupere_parametre_string(47,samplepointscad,(char*)"Fichier samplepointscad manquant");
522 app.recupere_parametre_string(48,samplepointsscn,(char*)"Fichier samplepointsscn manquant");
523 app.recupere_parametre_string(49,outputspbcfilename,(char*)"Fichier nummaiscn manquant");
524
525 if (app.get_erreur()==true) return 0;
526 CRIAQOPERATORS criaq;
527 criaq.sp_project_onCAD_SCAN(magicfilenamecad,nummaicad,samplepointscad,magicfilenamescn,nummaiscn,samplepointsscn,outputspbcfilename);
528 //criaq.active_affichage(app.affiche);
529 app.affiche((char*)"Fin");
530 }
531 if(app.get_action()==59)
532 {
533 char magicfilename[3000];
534 char outputfilename[3000];
535 int meshno;
536 char noisefile[3000];
537 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
538 app.recupere_parametre_string(2,outputfilename,(char*)"Fichier entrant manquant");
539 app.recupere_parametre_int_avec_defaut(5,meshno,0);
540 app.recupere_parametre_string(60,noisefile,(char*)"Fichier noisefile manquant");
541 if (app.get_erreur()==true) return 0;
542 CRIAQOPERATORS criaq;
543 //criaq.active_affichage(app.affiche);
544 criaq.ajouter_nois_normdir(magicfilename,meshno,noisefile,outputfilename);
545 app.affiche((char*)"Fin");
546 }
547
548 return 0;
549 }