Bonjour,

Je doit dessiner un polygone régulier, J'ai réussi à le faire de cette façon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
    SDL_Point point[6];
    point[0].x = 320 + radius*cos((2*M_PI)/5);
    point[0].y = 240 + radius*sin((2*M_PI)/5);
    point[1].x = 320 + radius*cos((4*M_PI)/5);
    point[1].y = 240 + radius*sin((4*M_PI)/5);
    point[2].x = 320 + radius*cos((6*M_PI)/5);
    point[2].y = 240 + radius*sin((6*M_PI)/5);
    point[3].x = 320 + radius*cos((8*M_PI)/5);
    point[3].y = 240 + radius*sin((8*M_PI)/5);
    point[4].x = 320 + radius*cos((10*M_PI)/5);
    point[4].y = 240 +radius*sin((10*M_PI)/5);
    point[5].x = 320 + radius*cos((2*M_PI)/5);
    point[5].y = 240 + radius*sin((2*M_PI)/5);
 
    SDL_RenderDrawLines(rendere,point,6);
J'ai ensuite voulu "l'automatiser" afin qu'on est juste besoin de rentrer un nombre de sommet et que le polygone soit dessiner tout seul :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
    for (compteur=1;compteur<nbrPoint+1;compteur++ )
    {
        SDL_RenderDrawLine((int)xInit,(int)yInit,(int)xFinal,(int)yFinal);
        return 0;
    }
sachant que les x/y Init/Final sont de la forme cos((2*pi*compteur)/2)
Cela m'affiche ce code erreur que je ne comprend pas
Nom : unknown.png
Affichages : 186
Taille : 17,0 Ko
Il y a bien 4 argument dans la fonction SDL_RenderDrawLine (enfin pour moi il y en a 4), j'ai cast les double qui servait de coordonné en int mais cela ne semble pas avoir marcher.
Merci de votre aide