ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/app/trans_maillage/src/main.cpp
Revision: 650
Committed: Wed Feb 11 00:03:21 2015 UTC (10 years, 6 months ago) by sattarpa
File size: 8502 byte(s)
Log Message:
proximity parameters added to "mailleur2d_ins_noeud"
relative curvature calculation added to "criaqoperators"

File Contents

# User Rev Content
1 sattarpa 439 #include "gestionversion.h"
2     #include <stdio.h>
3     #include "mg_file.h"
4     #include "occ_import.h"
5 francois 481 #include "fct_generateur_3d.h"
6 sattarpa 439 #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 sattarpa 546 #include "mailleur2d_stl_refine_ins_noeud.h"
14 sattarpa 439
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 sattarpa 464 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 sattarpa 471 MAGIC_PARAMETRE_APPLICATION p4(6,(char*)"-qualswap",MAGIC_PARAMETRE_APPLICATION::INTEGER,(char*)"Si appliquer la qualité de swap-diagonal > 0 - Defaut 0");
22 sattarpa 542 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 sattarpa 546 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 sattarpa 557 MAGIC_PARAMETRE_APPLICATION p12(14,(char*)"-gentriqual",MAGIC_PARAMETRE_APPLICATION::DOUBLE,(char*)"The minimum quality limit for genearted triangles - Defaut 0.2");
30 sattarpa 650 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 sattarpa 546
33 sattarpa 650
34     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);
35     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);p6.ajouter_dependance(16);
36 sattarpa 546 p7.ajouter_dependance(1);p7.ajouter_dependance(2);p7.ajouter_dependance(3);
37     p8.ajouter_dependance(1);p8.ajouter_dependance(2);p8.ajouter_dependance(3);p8.ajouter_dependance(11);
38     p10.ajouter_dependance(1);p10.ajouter_dependance(2);p10.ajouter_dependance(3);p10.ajouter_dependance(4);p10.ajouter_dependance(6);
39     p11.ajouter_dependance(1);p11.ajouter_dependance(2);p11.ajouter_dependance(3);p11.ajouter_dependance(4);p11.ajouter_dependance(6);
40 sattarpa 439 lst.push_back(p1);
41     lst.push_back(p2);
42 sattarpa 455 lst.push_back(p3);
43 sattarpa 542 lst.push_back(p4);
44     lst.push_back(p5);
45     lst.push_back(p6);
46 sattarpa 546 lst.push_back(p7);
47     lst.push_back(p8);
48     lst.push_back(p9);
49     lst.push_back(p10);
50     lst.push_back(p11);
51 sattarpa 557 lst.push_back(p12);
52 sattarpa 650 lst.push_back(p13);
53     lst.push_back(p14);
54    
55 sattarpa 546 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);
56 sattarpa 439 if (app.get_erreur()==true) return 0;
57 sattarpa 542
58     if(app.get_action()==7)
59     {
60 sattarpa 439 char magicfilename[3000];
61     char inspointfilename[3000];
62     char outputfilename[3000];
63     int meshno;
64 sattarpa 455 int nivopt;
65 sattarpa 471 int qualswap;
66 sattarpa 650 double proxval;
67     double proxedgeval;
68 sattarpa 439 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
69     app.recupere_parametre_string_avec_defaut(2,outputfilename,magicfilename);
70     app.recupere_parametre_int_avec_defaut(3,meshno,0);
71 sattarpa 464 app.recupere_parametre_string(4,inspointfilename,(char*)"Fichier de points manquant");
72     app.recupere_parametre_int_avec_defaut(5,nivopt,5);
73 sattarpa 471 app.recupere_parametre_int_avec_defaut(6,qualswap,0);
74 sattarpa 439 if (app.get_erreur()==true) return 0;
75 sattarpa 650 MAILLEUR2D_INS_NOEUD pinse(magicfilename,meshno,inspointfilename,outputfilename,nivopt,qualswap,proxval,proxedgeval);
76 francois 456 pinse.active_affichage(app.affiche);
77     pinse.ins_points();
78 sattarpa 439 app.affiche((char*)"Fin");
79     }
80 sattarpa 542 if(app.get_action()==8)
81     {
82     char magicfilename[3000];
83     char inspointfilename[3000];
84     char outputfilename[3000];
85     int meshno;
86     int nivopt;
87     int qualswap;
88 sattarpa 557 double gentriqual;
89 sattarpa 650 double proxval;
90     double proxedgeval;
91 sattarpa 542 app.recupere_parametre_string(1,magicfilename,(char*)"Fichier d'entrée manquant");
92     app.recupere_parametre_string_avec_defaut(2,outputfilename,magicfilename);
93     app.recupere_parametre_int_avec_defaut(3,meshno,0);
94     app.recupere_parametre_string(4,inspointfilename,(char*)"Fichier de points manquant avec des conditions limites");
95     app.recupere_parametre_int_avec_defaut(5,nivopt,5);
96     app.recupere_parametre_int_avec_defaut(6,qualswap,0);
97 sattarpa 557 app.recupere_parametre_double_avec_defaut(14,gentriqual,0.2);
98 sattarpa 542 if (app.get_erreur()==true) return 0;
99 sattarpa 650 MAILLEUR2D_INS_NOEUD pinse(magicfilename,meshno,inspointfilename,outputfilename,nivopt,qualswap,proxval,proxedgeval);
100 sattarpa 542 pinse.active_affichage(app.affiche);
101 sattarpa 557 pinse.ins_point_withbc(gentriqual);
102 sattarpa 542 app.affiche((char*)"Fin");
103     }
104    
105 sattarpa 546 if(app.get_action()==9)
106     {
107     char fichierstlmagic[3000];
108     char fichierout[3000];
109     int nummai;
110     app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant");
111     app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
112     app.recupere_parametre_int_avec_defaut(3,nummai,0);
113     if (app.get_erreur()==true) return 0;
114    
115     MAILLEUR2D_STL_REFINE_INS_NOEUD stlrf(fichierstlmagic,fichierout,nummai);
116     stlrf.active_affichage(app.affiche);
117     stlrf.stl_refining();
118     app.affiche((char*)"Fin");
119     }
120    
121     if(app.get_action()==10)
122     {
123     char fichierstlmagic[3000];
124     char fichierout[3000];
125     char fichiercarte[3000];
126     int nummai;
127 sattarpa 542
128 sattarpa 546 app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant");
129     app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
130     app.recupere_parametre_int_avec_defaut(3,nummai,0);
131     app.recupere_parametre_string(11,fichiercarte,(char*)"Fichier de de la taille de carte manquant");
132    
133     if (app.get_erreur()==true) return 0;
134     MAILLEUR2D_STL_REFINE_INS_NOEUD stlrfszmp(fichierstlmagic,fichierout,fichiercarte,nummai);
135     stlrfszmp.active_affichage(app.affiche);
136     stlrfszmp.stl_sizmpref();
137     app.affiche((char*)"Fin");
138 sattarpa 542 }
139 sattarpa 546
140     if(app.get_action()==12)
141     {
142     char fichierstlmagic[3000];
143     char fichierinspoint[3000];
144     char fichierout[3000];
145     int nummai;
146     int qualswap;
147     app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant, fichier stl.magic");
148     app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
149     app.recupere_parametre_int_avec_defaut(3,nummai,0);
150     app.recupere_parametre_string(4,fichierinspoint,(char*)"Fichier de points manquant");
151     app.recupere_parametre_int_avec_defaut(6,qualswap,0);
152     if (app.get_erreur()==true) return 0;
153     MAILLEUR2D_STL_REFINE_INS_NOEUD stlpinse(fichierstlmagic,fichierinspoint,fichierout,nummai,qualswap);
154     stlpinse.active_affichage(app.affiche);
155     stlpinse.stlins_points();
156     app.affiche((char*)"Fin");
157     }
158     if(app.get_action()==13)
159     {
160     char fichierstlmagic[3000];
161     char fichierinspoint[3000];
162     char fichierout[3000];
163     int nummai;
164     int qualswap;
165     app.recupere_parametre_string(1,fichierstlmagic,(char*)"Fichier d'entrée manquant, fichier stl.magic");
166     app.recupere_parametre_string_avec_defaut(2,fichierout,fichierstlmagic);
167     app.recupere_parametre_int_avec_defaut(3,nummai,0);
168     app.recupere_parametre_string(4,fichierinspoint,(char*)"Fichier de points manquant");
169     app.recupere_parametre_int_avec_defaut(6,qualswap,0);
170     if (app.get_erreur()==true) return 0;
171     MAILLEUR2D_STL_REFINE_INS_NOEUD stlpinse(fichierstlmagic,fichierinspoint,fichierout,nummai,qualswap);
172     stlpinse.active_affichage(app.affiche);
173     stlpinse.stlins_point_withbc();
174     app.affiche((char*)"Fin");
175     }
176    
177     return 0;
178     }