MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
vct_comparaison_resultat.cpp
Aller à la documentation de ce fichier.
1 //####//------------------------------------------------------------
2 //####//------------------------------------------------------------
3 //####// MAGiC
4 //####// Jean Christophe Cuilliere et Vincent FRANCOIS
5 //####// Departement de Genie Mecanique - UQTR
6 //####//------------------------------------------------------------
7 //####// MAGIC est un projet de recherche de l equipe ERICCA
8 //####// du departement de genie mecanique de l Universite du Quebec a Trois Rivieres
9 //####// http://www.uqtr.ca/ericca
10 //####// http://www.uqtr.ca/
11 //####//------------------------------------------------------------
12 //####//------------------------------------------------------------
13 //####//
14 //####// vct_comparaison_resultat.cpp
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:56 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #include "gestionversion.h"
24 #include "mg_file.h"
25 #include "ot_tenseur.h"
26 
27 
28 
29 
30 
31 VCT_COMPARAISON_RESULTAT::VCT_COMPARAISON_RESULTAT(class MG_GESTIONNAIRE* origest,MG_GESTIONNAIRE* modgest,class MG_GEOMETRIE* origeo,MG_GEOMETRIE* modgeo):gest_origine(origest),gest_modifie(modgest),geo_origine(origeo),geo_modifie(modgeo)
32 {
33  OT_VECTEUR_3D vec1(1.0,0.,0.);
34  OT_VECTEUR_3D vec2(0.,1.0,0.);
35  OT_VECTEUR_3D vec3(0.,0.,1.0);
36  OT_VECTEUR_3D vec4(0.,0.,0.);
37  initialise_changement_repere(vec1,vec2,vec3,vec4);
38 }
39 
41 {
42  OT_VECTEUR_3D vec1(1.0,0.,0.);
43  OT_VECTEUR_3D vec2(0.,1.0,0.);
44  OT_VECTEUR_3D vec3(0.,0.,1.0);
45  OT_VECTEUR_3D vec4(0.,0.,0.);
46  initialise_changement_repere(vec1,vec2,vec3,vec4);
47 }
48 
50 {
51 }
52 
53 
55 {
56  translation=vec4;
60 }
61 
62 
64 {
65  switch (type)
66  {
67  case ORIGINE_CONSERVEE:
69  break;
70  case ORIGINE_DISPARUE:
72  break;
73  case MODIFIE_APPARUE:
75  break;
76  case MODIFIE_CONSERVEE:
78  break;
79  }
80 }
81 
82 
84 {
85  std::pair<std::map<unsigned long,CORRESPONDANCE,std::less <unsigned long> >::iterator,bool> ret;
86  std::pair<unsigned long,CORRESPONDANCE> tmp(ele.eleorigine->get_id(),ele);
87  ret=listecorrespondante1.insert(tmp);
88  if (ret.second==false) return 0;
89  std::pair<unsigned long,CORRESPONDANCE> tmp2(ele.elemodifie->get_id(),ele);
90  listecorrespondante1bis.insert(tmp2);
91  return 1;
92 }
93 
94 
95 
97 {
98  switch (type)
99  {
100  case ORIGINE_CONSERVEE:
102  break;
103  case ORIGINE_DISPARUE:
105  break;
106  case MODIFIE_APPARUE:
108  break;
109  case MODIFIE_CONSERVEE:
111  break;
112  }
113 }
114 
116 {
117  int nb=0;
118  switch (type)
119  {
120  case ORIGINE_CONSERVEE:
121  nb=origineconserve.get_nb();
122  break;
123  case ORIGINE_DISPARUE:
124  nb=originedisparue.get_nb();
125  break;
126  case MODIFIE_APPARUE:
127  nb=modifieapparue.get_nb();
128  break;
129  case MODIFIE_CONSERVEE:
130  nb=modifieconserve.get_nb();
131  break;
132  }
133  return nb;
134 }
135 
136 
138 {
139  return listecorrespondante1.size();
140 }
141 
142 
144 {
145  MG_ELEMENT_TOPOLOGIQUE* ele=NULL;
146  switch (type)
147  {
148  case ORIGINE_CONSERVEE:
149  ele=origineconserve.get(num);
150  break;
151  case ORIGINE_DISPARUE:
152  ele=originedisparue.get(num);
153  break;
154  case MODIFIE_APPARUE:
155  ele=modifieapparue.get(num);
156  break;
157  case MODIFIE_CONSERVEE:
158  ele=modifieconserve.get(num);
159  break;
160  }
161  return ele;
162 }
163 
165 {
166 return faceref1;
167 }
168 
170 {
171 return faceref2;
172 }
173 
175 {
176 faceref1=face;
177 }
178 
180 {
181 faceref2=face;
182 }
183 
184 
186 {
187  std::map<unsigned long,CORRESPONDANCE,std::less <unsigned long> >::iterator it=listecorrespondante1.find(id);
188  if (it==listecorrespondante1.end()) return 0;
189  CORRESPONDANCE ele=(*it).second;
190  return ele.elemodifie->get_id();
191 }
192 
194 {
195  std::map<unsigned long,CORRESPONDANCE,std::less <unsigned long> >::iterator it=listecorrespondante1bis.find(id);
196  if (it==listecorrespondante1bis.end()) return 0;
197  CORRESPONDANCE ele=(*it).second;
198  return ele.eleorigine->get_id();
199 }
200 
201 
202 void VCT_COMPARAISON_RESULTAT::enregistrer(char *nom,char* nomgestori,char *nomgestmod)
203 {
204  gest_origine->enregistrer(nomgestori);
205  gest_modifie->enregistrer(nomgestmod);
206  FILE* in =fopen(nom,"wt");
207  fprintf(in,"%s %lu\n",nomgestori,geo_origine->get_id());
208  fprintf(in,"%s %lu\n",nomgestmod,geo_modifie->get_id());
209  fprintf(in,"%e %e %e\n",rotation.get_vecteur1().get_x(),rotation.get_vecteur1().get_y(),rotation.get_vecteur1().get_z());
210  fprintf(in,"%e %e %e\n",rotation.get_vecteur2().get_x(),rotation.get_vecteur2().get_y(),rotation.get_vecteur2().get_z());
211  fprintf(in,"%e %e %e\n",rotation.get_vecteur3().get_x(),rotation.get_vecteur3().get_y(),rotation.get_vecteur3().get_z());
212  fprintf(in,"%e %e %e\n",translation.get_x(),translation.get_y(),translation.get_z());
213  fprintf(in,"%lu // face reference 1\n",faceref1->get_id());
214  fprintf(in,"%lu // face reference 2\n",faceref2->get_id());
216  fprintf(in,"%d //tableau correspondance\n",nb);
217  for (std::map<unsigned long,CORRESPONDANCE,std::less <unsigned long> >::iterator it=listecorrespondante1.begin();it!=listecorrespondante1.end();it++)
218  {
219  CORRESPONDANCE cor=(*it).second;
220  char typeent;
221  if (cor.eleorigine->get_dimension()==0) typeent='S';
222  if (cor.eleorigine->get_dimension()==1) typeent='A';
223  if (cor.eleorigine->get_dimension()==2) typeent='F';
224  fprintf(in,"%lu %lu %c %c\n",cor.eleorigine->get_id(),cor.elemodifie->get_id(),cor.typeco,typeent);
225  }
227  fprintf(in,"%d //tableau origine_conservee\n",nb);
228  for (int i=0;i<nb;i++)
229  fprintf(in," %lu \n",get_liste_topologie(ORIGINE_CONSERVEE,i)->get_id());
231  fprintf(in,"%d //tableau origine_disparue\n",nb);
232  for (int i=0;i<nb;i++)
233  fprintf(in," %lu \n",get_liste_topologie(ORIGINE_DISPARUE,i)->get_id());
235  fprintf(in,"%d //tableau modifie_conserve\n",nb);
236  for (int i=0;i<nb;i++)
237  fprintf(in," %lu \n",get_liste_topologie(MODIFIE_CONSERVEE,i)->get_id());
239  fprintf(in,"%d //tableau modifie_apparue\n",nb);
240  for (int i=0;i<nb;i++)
241  fprintf(in," %lu \n",get_liste_topologie(MODIFIE_APPARUE,i)->get_id());
243  fprintf(in,"%d //tableau correspondance noeud et tetra\n",nb);
244  unsigned long id1,id2;
245  int res=get_correspondance_premier(id1,id2);
246  while (res==1)
247  {
248  fprintf(in," %lu %lu\n",id1,id2);
250  }
251  fclose(in);
252 }
253 
255 {
256  FILE* in =fopen(nom,"rt");
257  char mess[500];
258  char* res=fgets(mess,500,in);
259  char nomfich[500];
260  long id;
261  sscanf(mess,"%s %lu",nomfich,&id);
262  gest_origine=new MG_FILE(nomfich);
263  *gestori=gest_origine;
265  res=fgets(mess,500,in);
266  sscanf(mess,"%s %lu",nomfich,&id);
267  gest_modifie=new MG_FILE(nomfich);
268  *gestmod=gest_modifie;
270  res=fgets(mess,500,in);
271  double x,y,z;
272  sscanf(mess,"%le %le %le",&x,&y,&z);
276  res=fgets(mess,500,in);
277  sscanf(mess,"%le %le %le",&x,&y,&z);
281  res=fgets(mess,500,in);
282  sscanf(mess,"%le %le %le",&x,&y,&z);
286  res=fgets(mess,500,in);
287  sscanf(mess,"%le %le %le",&x,&y,&z);
291  unsigned long id1,id2;
292  res=fgets(mess,500,in);
293  sscanf(mess,"%lu",&id1);
294  res=fgets(mess,500,in);
295  sscanf(mess,"%lu",&id2);
298  int nb;
299  res=fgets(mess,500,in);
300  sscanf(mess,"%d",&nb);
301  for (int i=0;i<nb;i++)
302  {
303  long id1,id2;
304  char c;
305  char* res=fgets(mess,500,in);
306  sscanf(mess,"%lu %lu %c",&id1,&id2,&c);
309  }
310  res=fgets(mess,500,in);
311  sscanf(mess,"%d",&nb);
312  for (int i=0;i<nb;i++)
313  {
314  char* res=fgets(mess,500,in);
315  sscanf(mess,"%lu",&id);
318  }
319  res=fgets(mess,500,in);
320  sscanf(mess,"%d",&nb);
321  for (int i=0;i<nb;i++)
322  {
323  char* res=fgets(mess,500,in);
324  sscanf(mess,"%lu",&id);
327  }
328  res=fgets(mess,500,in);
329  sscanf(mess,"%d",&nb);
330  for (int i=0;i<nb;i++)
331  {
332  char* res=fgets(mess,500,in);
333  sscanf(mess,"%lu",&id);
336  }
337  res=fgets(mess,500,in);
338  sscanf(mess,"%d",&nb);
339  for (int i=0;i<nb;i++)
340  {
341  char* res=fgets(mess,500,in);
342  sscanf(mess,"%lu",&id);
345  }
346  res=fgets(mess,500,in);
347  sscanf(mess,"%d",&nb);
348  for (int i=0;i<nb;i++)
349  {
350  char* res=fgets(mess,500,in);
351  unsigned long id1,id2;
352  sscanf(mess,"%lu %lu",&id1,&id2);
353  ajouter_correspondance(id1,id2);
354  }
355 }
356 
358 {
359  MG_ELEMENT_TOPOLOGIQUE* ele=NULL;
360  ele=geo->get_mg_sommetid(id);
361  if (ele==NULL) ele=geo->get_mg_areteid(id);
362  if (ele==NULL) ele=geo->get_mg_faceid(id);
363  return ele;
364 }
365 
366 
368 {
369  return listecorrespondante2.size();
370 }
371 
372 void VCT_COMPARAISON_RESULTAT::ajouter_correspondance(unsigned long idorigine,unsigned long idmodifie)
373 {
374  std::pair<unsigned long,unsigned long> tmp(idorigine,idmodifie);
375  listecorrespondante2.insert(tmp);
376  std::pair<unsigned long,unsigned long> tmp2(idmodifie,idorigine);
377  listecorrespondante3.insert(tmp2);
378 }
379 
380 unsigned long VCT_COMPARAISON_RESULTAT::get_correspondance_origine(unsigned long idorigine)
381 {
382  unsigned long id=(*listecorrespondante2.find(idorigine)).second;
383  return id;
384 }
385 
386 unsigned long VCT_COMPARAISON_RESULTAT::get_correspondance_modifie(unsigned long idmodifie)
387 {
388  unsigned long id=(*listecorrespondante3.find(idmodifie)).second;
389  return id;
390 }
391 
392 int VCT_COMPARAISON_RESULTAT::get_correspondance_premier(unsigned long &idorigine,unsigned long &idmodifie)
393 {
394  it=listecorrespondante2.begin();
395  if (it==listecorrespondante2.end()) return 0;
396  idorigine=(*it).first;
397  idmodifie=(*it).second;
398  return 1;
399 }
400 
401 int VCT_COMPARAISON_RESULTAT::get_correspondance_suivant(unsigned long &idorigine,unsigned long &idmodifie)
402 {
403  it++;
404  if (it==listecorrespondante2.end()) return 0;
405  idorigine=(*it).first;
406  idmodifie=(*it).second;
407  return 1;
408 }
409 
410 
412 {
414  return vecres;
415 }
416 
418 {
419  OT_MATRICE_3D rotinv;
420  rotation.transpose(rotinv);
421  OT_VECTEUR_3D vecres=rotinv*vec-rotinv*translation;
422  return vecres;
423 }
424 
426 {
427  OT_VECTEUR_3D vecres=rotation*vec;
428  return vecres;
429 }
430 
431 
433 {
434  OT_MATRICE_3D rotinv;
435  rotation.transpose(rotinv);
436  OT_VECTEUR_3D vecres=rotinv*vec;
437  return vecres;
438 }
439 
440 
442 {
443  OT_MATRICE_3D baseres=rotation*base;
444  return baseres;
445 }
446 
448 {
449  OT_VECTEUR_3D vec1((*tens)(0,0).get_x(),(*tens)(1,0).get_x(),(*tens)(2,0).get_x());
450  OT_VECTEUR_3D vec2((*tens)(0,1).get_x(),(*tens)(1,1).get_x(),(*tens)(2,1).get_x());
451  OT_VECTEUR_3D vec3((*tens)(0,2).get_x(),(*tens)(1,2).get_x(),(*tens)(2,2).get_x());
452  OT_MATRICE_3D mat(vec1,vec2,vec3);
453  return mat;
454 }
455 
456 
458 {
459  OT_MATRICE_3D rotinv;
460  rotation.transpose(rotinv);
461  OT_MATRICE_3D baseres=rotinv*base;
462  return baseres;
463 }
464 
466 {
467 similarite.ajouter(val);
468 }
469 
471 {
472 identite.ajouter(val);
473 }
474 
476 {
477 localise_face.ajouter(val);
478 }
480 {
481 localise_arete.ajouter(val);
482 }
484 {
486 }
488 {
489 modifie_face.ajouter(val);
490 }
492 {
493 modifie_arete.ajouter(val);
494 }
495 
497 {
498  return similarite.get_nb();
499 }
500 
502 {
503  return identite.get_nb();
504 }
505 
507 {
508  return localise_face.get_nb();
509 }
510 
512 {
513  return localise_face.get(num);
514 }
515 
517 {
518  return identite.get(num);
519 }
520 
522 {
523  return similarite.get(num);
524 }
525 
526 
527 
528 
529 void VCT_COMPARAISON_RESULTAT::compare_enregistrement(char *nom,char *nom1,char *nom2)
530 {
531 FILE* in =fopen(nom,"wt");
532 fprintf(in,"//*************************************************************\n");
533 fprintf(in,"// CAD Model Comparison\n");
534 fprintf(in,"// Jean-Christophe Cuillière and Vincent Francois\n");
535 fprintf(in,"// ERICCA - UQTR \n");
536 fprintf(in,"//*************************************************************\n");
537 fprintf(in,"Model A:\n");
538 fprintf(in," %s\n",nom1);
539 fprintf(in,"Model B:\n");
540 fprintf(in," %s\n",nom2);
541 fprintf(in,"Reference faces :\n");
542 fprintf(in," Model A:\n");
543 fprintf(in," %lu\n",faceref1->get_id());
544 fprintf(in," Model B:\n");
545 fprintf(in," %lu\n",faceref2->get_id());
546 fprintf(in,"Transformation matrix :\n");
547 fprintf(in," %le %le %le %le\n",rotation.get_vecteur1().get_x(),rotation.get_vecteur2().get_x(),rotation.get_vecteur3().get_x(),translation.get_x());
548 fprintf(in," %le %le %le %le\n",rotation.get_vecteur1().get_y(),rotation.get_vecteur2().get_y(),rotation.get_vecteur3().get_y(),translation.get_y());
549 fprintf(in," %le %le %le %le\n",rotation.get_vecteur1().get_z(),rotation.get_vecteur2().get_z(),rotation.get_vecteur3().get_z(),translation.get_z());
550 fprintf(in," %le %le %le %le\n",0.,0.,0.,1.);
551 fprintf(in,"%d Similar faces :\n",similarite.get_nb()/2);
552 for (int i=0;i<similarite.get_nb()/2;i++)
553  fprintf(in," %lu %lu\n",similarite.get(2*i),similarite.get(2*i+1));
554 fprintf(in,"%d Identical faces :\n",identite.get_nb()/2);
555 for (int i=0;i<identite.get_nb()/2;i++)
556  fprintf(in," %lu %lu\n",identite.get(2*i),identite.get(2*i+1));
557 fprintf(in,"%d Localized identical faces :\n",localise_face.get_nb()/2);
558 for (int i=0;i<localise_face.get_nb()/2;i++)
559  fprintf(in," %lu %lu\n",localise_face.get(2*i),localise_face.get(2*i+1));
560 fprintf(in,"%d Localized identical edges :\n",localise_arete.get_nb()/2);
561 for (int i=0;i<localise_arete.get_nb()/2;i++)
562  fprintf(in," %lu %lu\n",localise_arete.get(2*i),localise_arete.get(2*i+1));
563 fprintf(in,"%d Localized identical vertices :\n",localise_sommet.get_nb()/2);
564 for (int i=0;i<localise_sommet.get_nb()/2;i++)
565  fprintf(in," %lu %lu\n",localise_sommet.get(2*i),localise_sommet.get(2*i+1));
566 fprintf(in,"%d Localized modified faces :\n",modifie_face.get_nb()/2);
567 for (int i=0;i<modifie_face.get_nb()/2;i++)
568  fprintf(in," %lu %lu\n",modifie_face.get(2*i),modifie_face.get(2*i+1));
569 fprintf(in,"%d Localized modified edges :\n",modifie_arete.get_nb()/2);
570 for (int i=0;i<modifie_arete.get_nb()/2;i++)
571  fprintf(in," %lu %lu\n",modifie_arete.get(2*i),modifie_arete.get(2*i+1));
572 fprintf(in,"//*************************************************************\n");
573 fprintf(in,"// End of file\n");
574 fprintf(in,"//*************************************************************\n");
575 fclose(in);
576 }
TPL_MAP_ENTITE::supprimer
virtual void supprimer(X x)
Definition: tpl_map_entite.h:69
MG_GESTIONNAIRE::enregistrer
virtual void enregistrer(std::ostream &o, double version=MAGIC_VERSION_FICHIER_DOUBLE)
Definition: mg_gestionnaire.cpp:1070
OT_VECTEUR_3D::change_z
virtual void change_z(double z)
Definition: ot_mathematique.cpp:444
VCT_COMPARAISON_RESULTAT::enregistrer
void enregistrer(char *nom, char *nomgestori, char *nomgestmod)
Definition: vct_comparaison_resultat.cpp:202
OT_MATRICE_3D::change_vecteur3
void change_vecteur3(OT_VECTEUR_3D v)
Definition: ot_mathematique.cpp:810
VCT_COMPARAISON_RESULTAT::change_base_mod_ori
OT_MATRICE_3D change_base_mod_ori(OT_MATRICE_3D base)
Definition: vct_comparaison_resultat.cpp:457
gestionversion.h
CORRESPONDANCE::typeco
typecorres typeco
Definition: vct_comparaison_resultat.h:51
VCT_COMPARAISON_RESULTAT::get_liste_identite
unsigned long get_liste_identite(int num)
Definition: vct_comparaison_resultat.cpp:516
VCT_COMPARAISON_RESULTAT::listecorrespondante2
std::map< unsigned long, unsigned long, std::less< unsigned long > > listecorrespondante2
Definition: vct_comparaison_resultat.h:140
MG_GEOMETRIE::get_mg_areteid
MG_ARETE * get_mg_areteid(unsigned long num)
Definition: mg_geometrie.cpp:775
VCT_COMPARAISON_RESULTAT::ajouter_modifie_face
void ajouter_modifie_face(unsigned long val)
Definition: vct_comparaison_resultat.cpp:487
VCT_COMPARAISON_RESULTAT::localise_arete
TPL_LISTE_ENTITE< unsigned long > localise_arete
Definition: vct_comparaison_resultat.h:148
MG_IDENTIFICATEUR::get_id
unsigned long get_id()
Definition: mg_identificateur.cpp:53
VCT_COMPARAISON_RESULTAT::change_vecteur_mod_ori
OT_VECTEUR_3D change_vecteur_mod_ori(OT_VECTEUR_3D vec)
Definition: vct_comparaison_resultat.cpp:432
VCT_COMPARAISON_RESULTAT::ajouter_identite
void ajouter_identite(unsigned long val)
Definition: vct_comparaison_resultat.cpp:470
VCT_COMPARAISON_RESULTAT::get_liste_topologie
MG_ELEMENT_TOPOLOGIQUE * get_liste_topologie(int type, int num)
Definition: vct_comparaison_resultat.cpp:143
VCT_COMPARAISON_RESULTAT::retrouver
MG_ELEMENT_TOPOLOGIQUE * retrouver(MG_GEOMETRIE *geo, long id)
Definition: vct_comparaison_resultat.cpp:357
VCT_COMPARAISON_RESULTAT::rotation
OT_MATRICE_3D rotation
Definition: vct_comparaison_resultat.h:129
VCT_COMPARAISON_RESULTAT::get_nb_liste_similarite
int get_nb_liste_similarite(void)
Definition: vct_comparaison_resultat.cpp:496
OT_VECTEUR_3D::change_y
virtual void change_y(double y)
Definition: ot_mathematique.cpp:439
VCT_COMPARAISON_RESULTAT::get_nb_liste_localise_face
int get_nb_liste_localise_face(void)
Definition: vct_comparaison_resultat.cpp:506
VCT_COMPARAISON_RESULTAT::gest_origine
MG_GESTIONNAIRE * gest_origine
Definition: vct_comparaison_resultat.h:124
mg_file.h
VCT_COMPARAISON_RESULTAT::get_liste_localise_face
unsigned long get_liste_localise_face(int num)
Definition: vct_comparaison_resultat.cpp:511
CORRESPONDANCE
Definition: vct_comparaison_resultat.h:40
vct_comparaison_resultat.h
VCT_COMPARAISON_RESULTAT::lire
void lire(char *nom, MG_GESTIONNAIRE **gestori, MG_GESTIONNAIRE **gestmod)
Definition: vct_comparaison_resultat.cpp:254
MG_ELEMENT_TOPOLOGIQUE::get_dimension
virtual int get_dimension(void)=0
OT_MATRICE_3D::get_vecteur1
OT_VECTEUR_3D & get_vecteur1(void)
Definition: ot_mathematique.cpp:814
VCT_COMPARAISON_RESULTAT::get_nb_liste_correspondance
int get_nb_liste_correspondance(void)
Definition: vct_comparaison_resultat.cpp:137
VCT_COMPARAISON_RESULTAT::originedisparue
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > originedisparue
Definition: vct_comparaison_resultat.h:135
MG_GESTIONNAIRE
Definition: mg_gestionnaire.h:57
OT_VECTEUR_3D::get_x
virtual double get_x(void) const
Definition: ot_mathematique.cpp:417
OT_MATRICE_3D::transpose
void transpose(OT_MATRICE_3D &res) const
Definition: ot_mathematique.cpp:750
VCT_COMPARAISON_RESULTAT::faceref1
class MG_FACE * faceref1
Definition: vct_comparaison_resultat.h:131
VCT_COMPARAISON_RESULTAT::get_nb_liste_identite
int get_nb_liste_identite(void)
Definition: vct_comparaison_resultat.cpp:501
VCT_COMPARAISON_RESULTAT::get_face_reference1
class MG_FACE * get_face_reference1(void)
Definition: vct_comparaison_resultat.cpp:164
VCT_COMPARAISON_RESULTAT::MODIFIE_CONSERVEE
@ MODIFIE_CONSERVEE
Definition: vct_comparaison_resultat.h:63
MG_ELEMENT_TOPOLOGIQUE
Definition: mg_element_topologique.h:51
VCT_COMPARAISON_RESULTAT::geo_modifie
MG_GEOMETRIE * geo_modifie
Definition: vct_comparaison_resultat.h:127
VCT_COMPARAISON_RESULTAT::origineconserve
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > origineconserve
Definition: vct_comparaison_resultat.h:134
VCT_COMPARAISON_RESULTAT::it
std::map< unsigned long, unsigned long, std::less< long > >::iterator it
Definition: vct_comparaison_resultat.h:142
VCT_COMPARAISON_RESULTAT::change_coord_mod_ori
OT_VECTEUR_3D change_coord_mod_ori(OT_VECTEUR_3D vec)
Definition: vct_comparaison_resultat.cpp:417
VCT_COMPARAISON_RESULTAT::VCT_COMPARAISON_RESULTAT
VCT_COMPARAISON_RESULTAT()
Definition: vct_comparaison_resultat.cpp:40
OT_TENSEUR
Definition: ot_tenseur.h:41
VCT_COMPARAISON_RESULTAT::change_face_reference1
void change_face_reference1(class MG_FACE *face)
Definition: vct_comparaison_resultat.cpp:174
VCT_COMPARAISON_RESULTAT::modifieapparue
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > modifieapparue
Definition: vct_comparaison_resultat.h:137
VCT_COMPARAISON_RESULTAT::get_face_reference2
class MG_FACE * get_face_reference2(void)
Definition: vct_comparaison_resultat.cpp:169
VCT_COMPARAISON_RESULTAT::change_vecteur_ori_mod
OT_VECTEUR_3D change_vecteur_ori_mod(OT_VECTEUR_3D vec)
Definition: vct_comparaison_resultat.cpp:425
TPL_MAP_ENTITE::get_nb
virtual int get_nb(void)
Definition: tpl_map_entite.h:83
VCT_COMPARAISON_RESULTAT::similarite
TPL_LISTE_ENTITE< unsigned long > similarite
Definition: vct_comparaison_resultat.h:145
VCT_COMPARAISON_RESULTAT::ORIGINE_DISPARUE
@ ORIGINE_DISPARUE
Definition: vct_comparaison_resultat.h:63
VCT_COMPARAISON_RESULTAT::localise_sommet
TPL_LISTE_ENTITE< unsigned long > localise_sommet
Definition: vct_comparaison_resultat.h:149
OT_MATRICE_3D
Definition: ot_mathematique.h:160
VCT_COMPARAISON_RESULTAT::listecorrespondante3
std::map< unsigned long, unsigned long, std::less< unsigned long > > listecorrespondante3
Definition: vct_comparaison_resultat.h:141
VCT_COMPARAISON_RESULTAT::get_nb_correspondance
int get_nb_correspondance(void)
Definition: vct_comparaison_resultat.cpp:367
OT_MATRICE_3D::get_vecteur3
OT_VECTEUR_3D & get_vecteur3(void)
Definition: ot_mathematique.cpp:822
VCT_COMPARAISON_RESULTAT::~VCT_COMPARAISON_RESULTAT
~VCT_COMPARAISON_RESULTAT()
Definition: vct_comparaison_resultat.cpp:49
TPL_LISTE_ENTITE::ajouter
virtual void ajouter(X x)
Definition: tpl_liste_entite.h:38
VCT_COMPARAISON_RESULTAT::ajouter_liste_topologie
void ajouter_liste_topologie(int type, MG_ELEMENT_TOPOLOGIQUE *ele)
Definition: vct_comparaison_resultat.cpp:63
VCT_COMPARAISON_RESULTAT::compare_enregistrement
void compare_enregistrement(char *nom, char *nom1, char *nom2)
Definition: vct_comparaison_resultat.cpp:529
OT_MATRICE_3D::change_vecteur2
void change_vecteur2(OT_VECTEUR_3D v)
Definition: ot_mathematique.cpp:806
VCT_COMPARAISON_RESULTAT::geo_origine
MG_GEOMETRIE * geo_origine
Definition: vct_comparaison_resultat.h:126
TPL_LISTE_ENTITE::get_nb
virtual int get_nb(void)
Definition: tpl_liste_entite.h:67
VCT_COMPARAISON_RESULTAT::change_face_reference2
void change_face_reference2(class MG_FACE *face)
Definition: vct_comparaison_resultat.cpp:179
MG_FILE
Definition: mg_file.h:31
CORRESPONDANCE::elemodifie
MG_ELEMENT_TOPOLOGIQUE * elemodifie
Definition: vct_comparaison_resultat.h:50
VCT_COMPARAISON_RESULTAT::faceref2
class MG_FACE * faceref2
Definition: vct_comparaison_resultat.h:132
TPL_LISTE_ENTITE::get
virtual X get(int num)
Definition: tpl_liste_entite.h:72
VCT_COMPARAISON_RESULTAT::ajouter_localise_arete
void ajouter_localise_arete(unsigned long val)
Definition: vct_comparaison_resultat.cpp:479
OT_VECTEUR_3D::get_y
virtual double get_y(void) const
Definition: ot_mathematique.cpp:423
VCT_COMPARAISON_RESULTAT::change_coord_ori_mod
OT_VECTEUR_3D change_coord_ori_mod(OT_VECTEUR_3D vec)
Definition: vct_comparaison_resultat.cpp:411
VCT_COMPARAISON_RESULTAT::ajouter_localise_face
void ajouter_localise_face(unsigned long val)
Definition: vct_comparaison_resultat.cpp:475
VCT_COMPARAISON_RESULTAT::translation
OT_VECTEUR_3D translation
Definition: vct_comparaison_resultat.h:130
VCT_COMPARAISON_RESULTAT::identite
TPL_LISTE_ENTITE< unsigned long > identite
Definition: vct_comparaison_resultat.h:146
VCT_COMPARAISON_RESULTAT::get_correspondance_premier
int get_correspondance_premier(unsigned long &idorigine, unsigned long &idmodifie)
Definition: vct_comparaison_resultat.cpp:392
VCT_COMPARAISON_RESULTAT::modifie_arete
TPL_LISTE_ENTITE< unsigned long > modifie_arete
Definition: vct_comparaison_resultat.h:151
VCT_COMPARAISON_RESULTAT::get_liste_correspondance_modifie
unsigned long get_liste_correspondance_modifie(unsigned long id)
Definition: vct_comparaison_resultat.cpp:185
OT_VECTEUR_3D
Definition: ot_mathematique.h:94
TPL_MAP_ENTITE::ajouter
virtual void ajouter(X x)
Definition: tpl_map_entite.h:55
ot_tenseur.h
VCT_COMPARAISON_RESULTAT::get_liste_correspondance_origine
unsigned long get_liste_correspondance_origine(unsigned long id)
Definition: vct_comparaison_resultat.cpp:193
VCT_COMPARAISON_RESULTAT::get_correspondance_modifie
unsigned long get_correspondance_modifie(unsigned long idmodifie)
Definition: vct_comparaison_resultat.cpp:386
VCT_COMPARAISON_RESULTAT::ajouter_similarite
void ajouter_similarite(unsigned long val)
Definition: vct_comparaison_resultat.cpp:465
VCT_COMPARAISON_RESULTAT::ORIGINE_CONSERVEE
@ ORIGINE_CONSERVEE
Definition: vct_comparaison_resultat.h:63
OT_MATRICE_3D::get_vecteur2
OT_VECTEUR_3D & get_vecteur2(void)
Definition: ot_mathematique.cpp:818
VCT_COMPARAISON_RESULTAT::ajouter_localise_sommet
void ajouter_localise_sommet(unsigned long val)
Definition: vct_comparaison_resultat.cpp:483
MG_GEOMETRIE::get_mg_faceid
MG_FACE * get_mg_faceid(unsigned long num)
Definition: mg_geometrie.cpp:1226
VCT_COMPARAISON_RESULTAT::modifie_face
TPL_LISTE_ENTITE< unsigned long > modifie_face
Definition: vct_comparaison_resultat.h:150
VCT_COMPARAISON_RESULTAT::MODIFIE_APPARUE
@ MODIFIE_APPARUE
Definition: vct_comparaison_resultat.h:63
TPL_MAP_ENTITE::get
virtual X get(int num)
Definition: tpl_map_entite.h:89
CORRESPONDANCE::typecorres
typecorres
Definition: vct_comparaison_resultat.h:43
VCT_COMPARAISON_RESULTAT::listecorrespondante1
std::map< unsigned long, CORRESPONDANCE, std::less< unsigned long > > listecorrespondante1
Definition: vct_comparaison_resultat.h:138
OT_VECTEUR_3D::get_z
virtual double get_z(void) const
Definition: ot_mathematique.cpp:429
MG_GEOMETRIE
Definition: mg_geometrie.h:84
VCT_COMPARAISON_RESULTAT::ajouter_modifie_arete
void ajouter_modifie_arete(unsigned long val)
Definition: vct_comparaison_resultat.cpp:491
res
#define res(i, j)
VCT_COMPARAISON_RESULTAT::listecorrespondante1bis
std::map< unsigned long, CORRESPONDANCE, std::less< unsigned long > > listecorrespondante1bis
Definition: vct_comparaison_resultat.h:139
VCT_COMPARAISON_RESULTAT::ajouter_correspondance
void ajouter_correspondance(unsigned long idorigine, unsigned long idmodifie)
Definition: vct_comparaison_resultat.cpp:372
VCT_COMPARAISON_RESULTAT::get_nb_liste_topologie
int get_nb_liste_topologie(int type)
Definition: vct_comparaison_resultat.cpp:115
MG_FACE
Definition: mg_face.h:34
VCT_COMPARAISON_RESULTAT::change
OT_MATRICE_3D change(class OT_TENSEUR *tens)
Definition: vct_comparaison_resultat.cpp:447
VCT_COMPARAISON_RESULTAT::change_base_ori_mod
OT_MATRICE_3D change_base_ori_mod(OT_MATRICE_3D base)
Definition: vct_comparaison_resultat.cpp:441
MG_GEOMETRIE::get_mg_sommetid
MG_SOMMET * get_mg_sommetid(unsigned long num)
Definition: mg_geometrie.cpp:513
VCT_COMPARAISON_RESULTAT::gest_modifie
MG_GESTIONNAIRE * gest_modifie
Definition: vct_comparaison_resultat.h:125
VCT_COMPARAISON_RESULTAT::get_correspondance_origine
unsigned long get_correspondance_origine(unsigned long idorigine)
Definition: vct_comparaison_resultat.cpp:380
MG_GESTIONNAIRE::get_mg_geometrieid
MG_GEOMETRIE * get_mg_geometrieid(unsigned long num)
Definition: mg_gestionnaire.cpp:319
CORRESPONDANCE::eleorigine
class MG_ELEMENT_TOPOLOGIQUE * eleorigine
Definition: vct_comparaison_resultat.h:49
VCT_COMPARAISON_RESULTAT::supprimer_liste_topologie
void supprimer_liste_topologie(int type, MG_ELEMENT_TOPOLOGIQUE *ele)
Definition: vct_comparaison_resultat.cpp:96
OT_VECTEUR_3D::change_x
virtual void change_x(double x)
Definition: ot_mathematique.cpp:434
OT_MATRICE_3D::change_vecteur1
void change_vecteur1(OT_VECTEUR_3D v)
Definition: ot_mathematique.cpp:802
VCT_COMPARAISON_RESULTAT::initialise_changement_repere
void initialise_changement_repere(OT_VECTEUR_3D &vec1, OT_VECTEUR_3D &vec2, OT_VECTEUR_3D &vec3, OT_VECTEUR_3D &vec4)
Definition: vct_comparaison_resultat.cpp:54
VCT_COMPARAISON_RESULTAT::modifieconserve
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > modifieconserve
Definition: vct_comparaison_resultat.h:136
VCT_COMPARAISON_RESULTAT::get_correspondance_suivant
int get_correspondance_suivant(unsigned long &idorigine, unsigned long &idmodifie)
Definition: vct_comparaison_resultat.cpp:401
VCT_COMPARAISON_RESULTAT::localise_face
TPL_LISTE_ENTITE< unsigned long > localise_face
Definition: vct_comparaison_resultat.h:147
mat
#define mat(i, j)
VCT_COMPARAISON_RESULTAT::get_liste_similarite
unsigned long get_liste_similarite(int num)
Definition: vct_comparaison_resultat.cpp:521