 |
MAGiC
V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
|
Aller à la documentation de ce fichier.
85 std::pair<std::map<unsigned long,CORRESPONDANCE,std::less <unsigned long> >::iterator,
bool> ret;
88 if (ret.second==
false)
return 0;
187 std::map<unsigned long,CORRESPONDANCE,std::less <unsigned long> >::iterator
it=
listecorrespondante1.find(
id);
206 FILE* in =fopen(nom,
"wt");
216 fprintf(in,
"%d //tableau correspondance\n",nb);
227 fprintf(in,
"%d //tableau origine_conservee\n",nb);
228 for (
int i=0;i<nb;i++)
231 fprintf(in,
"%d //tableau origine_disparue\n",nb);
232 for (
int i=0;i<nb;i++)
235 fprintf(in,
"%d //tableau modifie_conserve\n",nb);
236 for (
int i=0;i<nb;i++)
239 fprintf(in,
"%d //tableau modifie_apparue\n",nb);
240 for (
int i=0;i<nb;i++)
243 fprintf(in,
"%d //tableau correspondance noeud et tetra\n",nb);
244 unsigned long id1,id2;
248 fprintf(in,
" %lu %lu\n",id1,id2);
256 FILE* in =fopen(nom,
"rt");
258 char*
res=fgets(mess,500,in);
261 sscanf(mess,
"%s %lu",nomfich,&
id);
265 res=fgets(mess,500,in);
266 sscanf(mess,
"%s %lu",nomfich,&
id);
270 res=fgets(mess,500,in);
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);
299 res=fgets(mess,500,in);
300 sscanf(mess,
"%d",&nb);
301 for (
int i=0;i<nb;i++)
305 char*
res=fgets(mess,500,in);
306 sscanf(mess,
"%lu %lu %c",&id1,&id2,&c);
310 res=fgets(mess,500,in);
311 sscanf(mess,
"%d",&nb);
312 for (
int i=0;i<nb;i++)
314 char*
res=fgets(mess,500,in);
315 sscanf(mess,
"%lu",&
id);
319 res=fgets(mess,500,in);
320 sscanf(mess,
"%d",&nb);
321 for (
int i=0;i<nb;i++)
323 char*
res=fgets(mess,500,in);
324 sscanf(mess,
"%lu",&
id);
328 res=fgets(mess,500,in);
329 sscanf(mess,
"%d",&nb);
330 for (
int i=0;i<nb;i++)
332 char*
res=fgets(mess,500,in);
333 sscanf(mess,
"%lu",&
id);
337 res=fgets(mess,500,in);
338 sscanf(mess,
"%d",&nb);
339 for (
int i=0;i<nb;i++)
341 char*
res=fgets(mess,500,in);
342 sscanf(mess,
"%lu",&
id);
346 res=fgets(mess,500,in);
347 sscanf(mess,
"%d",&nb);
348 for (
int i=0;i<nb;i++)
350 char*
res=fgets(mess,500,in);
351 unsigned long id1,id2;
352 sscanf(mess,
"%lu %lu",&id1,&id2);
374 std::pair<unsigned long,unsigned long> tmp(idorigine,idmodifie);
376 std::pair<unsigned long,unsigned long> tmp2(idmodifie,idorigine);
396 idorigine=(*it).first;
397 idmodifie=(*it).second;
405 idorigine=(*it).first;
406 idmodifie=(*it).second;
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());
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");
544 fprintf(in,
" Model B:\n");
546 fprintf(in,
"Transformation matrix :\n");
550 fprintf(in,
" %le %le %le %le\n",0.,0.,0.,1.);
572 fprintf(in,
"//*************************************************************\n");
573 fprintf(in,
"// End of file\n");
574 fprintf(in,
"//*************************************************************\n");
virtual void supprimer(X x)
virtual void enregistrer(std::ostream &o, double version=MAGIC_VERSION_FICHIER_DOUBLE)
virtual void change_z(double z)
void enregistrer(char *nom, char *nomgestori, char *nomgestmod)
void change_vecteur3(OT_VECTEUR_3D v)
OT_MATRICE_3D change_base_mod_ori(OT_MATRICE_3D base)
unsigned long get_liste_identite(int num)
std::map< unsigned long, unsigned long, std::less< unsigned long > > listecorrespondante2
MG_ARETE * get_mg_areteid(unsigned long num)
void ajouter_modifie_face(unsigned long val)
TPL_LISTE_ENTITE< unsigned long > localise_arete
OT_VECTEUR_3D change_vecteur_mod_ori(OT_VECTEUR_3D vec)
void ajouter_identite(unsigned long val)
MG_ELEMENT_TOPOLOGIQUE * get_liste_topologie(int type, int num)
MG_ELEMENT_TOPOLOGIQUE * retrouver(MG_GEOMETRIE *geo, long id)
int get_nb_liste_similarite(void)
virtual void change_y(double y)
int get_nb_liste_localise_face(void)
MG_GESTIONNAIRE * gest_origine
unsigned long get_liste_localise_face(int num)
void lire(char *nom, MG_GESTIONNAIRE **gestori, MG_GESTIONNAIRE **gestmod)
virtual int get_dimension(void)=0
OT_VECTEUR_3D & get_vecteur1(void)
int get_nb_liste_correspondance(void)
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > originedisparue
virtual double get_x(void) const
void transpose(OT_MATRICE_3D &res) const
int get_nb_liste_identite(void)
class MG_FACE * get_face_reference1(void)
MG_GEOMETRIE * geo_modifie
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > origineconserve
std::map< unsigned long, unsigned long, std::less< long > >::iterator it
OT_VECTEUR_3D change_coord_mod_ori(OT_VECTEUR_3D vec)
VCT_COMPARAISON_RESULTAT()
void change_face_reference1(class MG_FACE *face)
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > modifieapparue
class MG_FACE * get_face_reference2(void)
OT_VECTEUR_3D change_vecteur_ori_mod(OT_VECTEUR_3D vec)
TPL_LISTE_ENTITE< unsigned long > similarite
TPL_LISTE_ENTITE< unsigned long > localise_sommet
std::map< unsigned long, unsigned long, std::less< unsigned long > > listecorrespondante3
int get_nb_correspondance(void)
OT_VECTEUR_3D & get_vecteur3(void)
~VCT_COMPARAISON_RESULTAT()
virtual void ajouter(X x)
void ajouter_liste_topologie(int type, MG_ELEMENT_TOPOLOGIQUE *ele)
void compare_enregistrement(char *nom, char *nom1, char *nom2)
void change_vecteur2(OT_VECTEUR_3D v)
MG_GEOMETRIE * geo_origine
void change_face_reference2(class MG_FACE *face)
MG_ELEMENT_TOPOLOGIQUE * elemodifie
void ajouter_localise_arete(unsigned long val)
virtual double get_y(void) const
OT_VECTEUR_3D change_coord_ori_mod(OT_VECTEUR_3D vec)
void ajouter_localise_face(unsigned long val)
OT_VECTEUR_3D translation
TPL_LISTE_ENTITE< unsigned long > identite
int get_correspondance_premier(unsigned long &idorigine, unsigned long &idmodifie)
TPL_LISTE_ENTITE< unsigned long > modifie_arete
unsigned long get_liste_correspondance_modifie(unsigned long id)
virtual void ajouter(X x)
unsigned long get_liste_correspondance_origine(unsigned long id)
unsigned long get_correspondance_modifie(unsigned long idmodifie)
void ajouter_similarite(unsigned long val)
OT_VECTEUR_3D & get_vecteur2(void)
void ajouter_localise_sommet(unsigned long val)
MG_FACE * get_mg_faceid(unsigned long num)
TPL_LISTE_ENTITE< unsigned long > modifie_face
std::map< unsigned long, CORRESPONDANCE, std::less< unsigned long > > listecorrespondante1
virtual double get_z(void) const
void ajouter_modifie_arete(unsigned long val)
std::map< unsigned long, CORRESPONDANCE, std::less< unsigned long > > listecorrespondante1bis
void ajouter_correspondance(unsigned long idorigine, unsigned long idmodifie)
int get_nb_liste_topologie(int type)
OT_MATRICE_3D change(class OT_TENSEUR *tens)
OT_MATRICE_3D change_base_ori_mod(OT_MATRICE_3D base)
MG_SOMMET * get_mg_sommetid(unsigned long num)
MG_GESTIONNAIRE * gest_modifie
unsigned long get_correspondance_origine(unsigned long idorigine)
MG_GEOMETRIE * get_mg_geometrieid(unsigned long num)
class MG_ELEMENT_TOPOLOGIQUE * eleorigine
void supprimer_liste_topologie(int type, MG_ELEMENT_TOPOLOGIQUE *ele)
virtual void change_x(double x)
void change_vecteur1(OT_VECTEUR_3D v)
void initialise_changement_repere(OT_VECTEUR_3D &vec1, OT_VECTEUR_3D &vec2, OT_VECTEUR_3D &vec3, OT_VECTEUR_3D &vec4)
TPL_MAP_ENTITE< MG_ELEMENT_TOPOLOGIQUE * > modifieconserve
int get_correspondance_suivant(unsigned long &idorigine, unsigned long &idmodifie)
TPL_LISTE_ENTITE< unsigned long > localise_face
unsigned long get_liste_similarite(int num)