34 #pragma package(smart_init)
58 double Pnt_Insersion[3];
59 Pnt_Insersion[0]= Parametres.
get(0);
60 Pnt_Insersion[1]= Parametres.
get(1);
61 Pnt_Insersion[2]= Parametres.
get(2);
63 Vecteur1[0]= Parametres.
get(3);
64 Vecteur1[1]= Parametres.
get(4);
65 Vecteur1[2]= Parametres.
get(5);
66 double Vect_Directeur[3];
67 Vect_Directeur[0]= Parametres.
get(6);
68 Vect_Directeur[1]= Parametres.
get(7);
69 Vect_Directeur[2]= Parametres.
get(8);
70 double GRayon = Parametres.
get(9);
71 double PRayon = Parametres.
get(10);
80 for (
int j =0; j<nb_triangle;j++)
110 for (
int k =0; k < liste_noeuds0.
get_nb();k++)
125 Vect_Boite01.
norme();
126 Vect_Boite02.
norme();
127 Vect_Boite03.
norme();
129 OT_VECTEUR_3D Vect_Dirct0(Vect_Directeur[0],Vect_Directeur[1],Vect_Directeur[2]);
130 OT_VECTEUR_3D Vect_Directeur_Boite0(Vect_Dirct0*Vect_Boite01,Vect_Dirct0*Vect_Boite02,Vect_Dirct0*Vect_Boite03);
133 OT_VECTEUR_3D Vect1_Boite0(Vect1*Vect_Boite01,Vect1*Vect_Boite02,Vect1*Vect_Boite03);
135 OT_VECTEUR_3D Pnt_Inser0(Pnt_Insersion[0]-x0,Pnt_Insersion[1]-y0,Pnt_Insersion[2]-z0);
136 OT_VECTEUR_3D Pnt_Insersion_Boite0(Pnt_Inser0*Vect_Boite01,Pnt_Inser0*Vect_Boite02,Pnt_Inser0*Vect_Boite03);
142 for (
int k =0; k < liste_noeuds0.
get_nb();k++)
155 Vect_GRayon = Vect_GRayon +
V;
159 Vect_GRayon = Vect_GRayon/liste_noeuds0.
get_nb();
160 Vect_GRayon = Vect_GRayon +
OT_VECTEUR_3D(Pnt_Insersion[0],Pnt_Insersion[1],Pnt_Insersion[2]);
171 Vect_Boite11.
norme();
172 Vect_Boite12.
norme();
173 Vect_Boite13.
norme();
175 Vect_Directeur[0]= (Vect_Directeur_Boite0.
get_x()*Vect_Boite11.
get_x()+Vect_Directeur_Boite0.
get_y()*Vect_Boite12.
get_x()+Vect_Directeur_Boite0.
get_z()*Vect_Boite13.
get_x());
176 Vect_Directeur[1]= (Vect_Directeur_Boite0.
get_x()*Vect_Boite11.
get_y()+Vect_Directeur_Boite0.
get_y()*Vect_Boite12.
get_y()+Vect_Directeur_Boite0.
get_z()*Vect_Boite13.
get_y());
177 Vect_Directeur[2]= (Vect_Directeur_Boite0.
get_x()*Vect_Boite11.
get_z()+Vect_Directeur_Boite0.
get_y()*Vect_Boite12.
get_z()+Vect_Directeur_Boite0.
get_z()*Vect_Boite13.
get_z());
179 Pnt_Insersion[0]= x1 + Pnt_Insersion_Boite0.
get_x()*Vect_Boite11.
get_x()+Pnt_Insersion_Boite0.
get_y()*Vect_Boite12.
get_x()+Pnt_Insersion_Boite0.
get_z()*Vect_Boite13.
get_x();
180 Pnt_Insersion[1]= y1 + Pnt_Insersion_Boite0.
get_x()*Vect_Boite11.
get_y()+Pnt_Insersion_Boite0.
get_y()*Vect_Boite12.
get_y()+Pnt_Insersion_Boite0.
get_z()*Vect_Boite13.
get_y();;
181 Pnt_Insersion[2]= z1 + Pnt_Insersion_Boite0.
get_x()*Vect_Boite11.
get_z()+Pnt_Insersion_Boite0.
get_y()*Vect_Boite12.
get_z()+Pnt_Insersion_Boite0.
get_z()*Vect_Boite13.
get_z();;
183 Vect_GRayon = Vect_GRayon -
OT_VECTEUR_3D(Pnt_Insersion[0],Pnt_Insersion[1],Pnt_Insersion[2]);
190 GRayon = ((GRayon *
OT_VECTEUR_3D(Vecteur1[0],Vecteur1[1],Vecteur1[2]))+ Vect_GRayon).get_longueur();
194 double somme_distance = 0.0;
196 for (
int u =0; u<liste_noeuds1.
get_nb();u++)
201 somme_distance = somme_distance + distance;
204 PRayon = somme_distance/liste_noeuds1.
get_nb();
215 if(
faceso[l]==1) num_faceid = num_faceid+1;
virtual class FEM_NOEUD * get_fem_noeud(int num)=0
virtual int get_nb_fem_noeud(void)=0
bool contient(MG_IDENTIFICATEUR *id)
MG_GEOMETRIE * get_mg_geometrie(void)
FEM_NOEUD * get_fem_noeud(unsigned int num)
unsigned int get_nb_fem_noeud(void)
virtual double get_y(double coef=0.)
virtual double get_x(double coef=0.)
virtual double * get_coord(void)
virtual double get_z(double coef=0.)
virtual TPL_LISTE_ENTITE< FEM_ELEMENT_MAILLAGE * > * get_lien_fem_maillage(void)
virtual MG_SURFACE * get_surface(void)
virtual MG_BOUCLE * get_mg_boucle(int num)
virtual int get_nb_mg_boucle(void)
unsigned int get_nb_mg_face(void)
MG_FACE * get_mg_face(unsigned int num)
virtual int get_type_geometrique(TPL_LISTE_ENTITE< double > ¶m)=0
int Ajouter_Contour_Face(int ii)
int Determiner_Param_Boite(int i)
int Creer_Surface_Torique(double Pnt_Insersion[], double Vect_Directeur[], double GRayon, double PRayon)
int GCercle_Tore(double Pnt_Insersion[3], double Vect_Directeur[3], double Rayon)
int Ajouter_Surface_liste_Ideal(int num)
double Get_Param_Boite(int i)
int Ajouter_Point_Array_Ideal(double x, double y, double z, int i)
double Distance_Point_Curve(double x, double y, double z)
virtual double get_z(void) const
virtual double get_y(void) const
virtual double get_x(void) const
FEM_MAILLAGE * fem_maillage
OCC_FONCTION_RECONSTRUCTION & fonction
void Reconstruire(MG_BOUCLE *Boucle, double coef)
void Enregistrer(char *path)
REC_FACE_TORIQUE(FEM_MAILLAGE *mgmai, int Idealise, OCC_FONCTION_RECONSTRUCTION &fonc, int test, int *faces)
void Reconstruire(MG_FACE *face, double coef)
virtual ~REC_FACE_TORIQUE()
virtual void ajouter(X x)