1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
int navireimpacteur::creer_T(double& wb, double& beta,bool etrave,bool bulbe,bool borde_bulbe,double& x1,double& y1,double& z1,double& x2,double& y2,double& z2,double& x3,double& y3,double& z3,double& x4,double& y4,double& z4,Structure* sbarre,Structure* spied)
{
Elem_impacteur* elem_T = new Elem_T_impacteur();
node n1 ;
node n2 ;
node n3 ;
node n4 ;
int nb_super_elem = 0;
if(etrave && !bulbe)
{
nb_super_elem = nb_super_elem_etrave;
nb_elem_T_etrave++;
}
else if(!etrave && bulbe)
{
nb_super_elem = nb_super_elem_bulbe;
nb_elem_T_bulbe++;
}
nb_super_elem++;
nb_node ++;
n1.set_label(nb_node);
n1.set_x(x1);
n1.set_y(y1);
n1.set_z(z1);
elem_T->setNode1(&n1);
nb_node++;
n2.set_label(nb_node);
n2.set_x(x2);
n2.set_y(y2);
n2.set_z((z1+z2)/2);
elem_T->setNode2(&n2);
nb_node++;
n3.set_label(nb_node);
n3.set_x(x3);
n3.set_y(y3);
n3.set_z((z1+z3)/2);
elem_T->setNode3(&n3);
nb_node++;
n4.set_label(nb_node);
n4.set_x(x4);
n4.set_y(y4);
n4.set_z((z1+z4)/2);
elem_T->setNode4(&n4);
elem_T->setEtat("NON IMPACTE");
if(etrave && !bulbe)
{
nb_super_elem_etrave = nb_super_elem;
collect_super_elem_etrave.push_back(elem_T);
}
else if(!etrave && bulbe)
{
nb_super_elem_bulbe = nb_super_elem;
collect_super_elem_bulbe.push_back(elem_T);
}
//affichage du contenu du tableau
for(std::vector<Elem_impacteur*>::iterator p = collect_super_elem_etrave.begin(); p!=collect_super_elem_etrave.end();++p)
{
std::cout<<" label T elem_T : "<<(*p)->retour_node2()->retour_y() << " coordonnees Z noeud 2 "<<(*p)->retour_node2()->retour_z() << std::endl;
} |
Partager