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
|
void bombage(list triangles)
{
for (i = 0; i < nb_triangle; i++) //(4 au départ)
{
centre = calcule_centre_triangle(triangles[i]);
normal = calcule_normal(triangles[i]);
D= centre+normal*offset;
//calcul des 3 nouveaux triangles à partir de D et triangle i
triangle1(triangles[i].A,triangles[i].B, D);
triangle2(triangles[i].A,triangles[i].C, D);
triangle2(triangles[i].B,triangles[i].C, D);
//rajoute les 3 nouveaux triangles à la liste des triangles
triangles.push_back(triangle1);
triangles.push_back(triangle2);
triangles.push_back(triangle3);
//suppression du triangles i de la liste
triangles.clear(i);
}
} |
Partager