ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/mailleur/src/mailleur3d_peau.cpp
Revision: 494
Committed: Thu Mar 6 20:39:09 2014 UTC (11 years, 2 months ago) by francois
Original Path: magic/lib/mailleur_auto/src/mailleur3d_peau.cpp
File size: 1799 byte(s)
Log Message:
Possibilité d'enregistrement des mailleurs en cours de maillage pour voir ce qui se passe si il y a un bug

File Contents

# User Rev Content
1 francois 420 #include "gestionversion.h"
2     #include "mailleur3d_peau.h"
3     #include "fct_taille.h"
4     #include "mg_volume.h"
5     #include "m3d_triangle.h"
6    
7    
8    
9    
10    
11 francois 494 MAILLEUR3D_PEAU::MAILLEUR3D_PEAU(MG_MAILLAGE* mgmai,MG_GEOMETRIE *mggeo,MG_VOLUME* mgvol,FCT_TAILLE* fct_taille,bool save):MAILLEUR3D(mgmai,mggeo,fct_taille,save,mgvol,TOUTDETRUIRE)
12 francois 420 {
13    
14     }
15    
16    
17     MAILLEUR3D_PEAU::~MAILLEUR3D_PEAU()
18     {
19     }
20    
21    
22    
23     void MAILLEUR3D_PEAU::cree_front(MG_VOLUME* mgvol)
24     {
25     LISTE_MG_TRIANGLE::iterator it;
26     TPL_MAP_ENTITE<M3D_TRIANGLE*> lsttrim3d;
27    
28     for (MG_TRIANGLE* tri=mg_maillage->get_premier_triangle(it);tri!=NULL;tri=mg_maillage->get_suivant_triangle(it))
29     {
30     M3D_TRIANGLE* nvtri=new M3D_TRIANGLE(tri->get_id(),tri->get_lien_topologie(),tri->get_noeud1(),tri->get_noeud2(),tri->get_noeud3(),tri->get_segment1(),tri->get_segment2(),tri->get_segment3(),IMPOSE);
31     nvtri->change_frontiere();
32     nvtri->get_noeud1()->change_origine(IMPOSE);;
33     nvtri->get_noeud2()->change_origine(IMPOSE);;
34     nvtri->get_noeud3()->change_origine(IMPOSE);;
35     nvtri->get_segment1()->change_origine(IMPOSE);;
36     nvtri->get_segment2()->change_origine(IMPOSE);;
37     nvtri->get_segment3()->change_origine(IMPOSE);;
38     nvtri->get_segment1()->change_dimension_topo_null(2);
39     nvtri->get_segment2()->change_dimension_topo_null(2);
40     nvtri->get_segment3()->change_dimension_topo_null(2);
41     lsttrim3d.ajouter(nvtri);
42     }
43    
44     TPL_MAP_ENTITE<M3D_TRIANGLE*>::ITERATEUR it2;
45    
46     for (M3D_TRIANGLE* tri=lsttrim3d.get_premier(it2);tri!=NULL;tri=lsttrim3d.get_suivant(it2))
47     {
48     mg_maillage->supprimer_mg_triangleid(tri->get_id());
49     mg_maillage->ajouter_mg_triangle(tri);
50     }
51    
52     for (MG_TRIANGLE* tri=mg_maillage->get_premier_triangle(it);tri!=NULL;tri=mg_maillage->get_suivant_triangle(it))
53     ajouter_front_courant(NONFORCE,tri->get_noeud1(),tri->get_noeud2(),tri->get_noeud3(),tri);
54    
55     }