Cercle graphique par vecteurs

(Cliquez-ici pour accéder à la version originale de cette discussion avec couleurs et images)







Posted by: esselfe

Bonjour à tous!

Je dois créer un cercle selon des coordonées réparties sur x et y.
À vrai dire, j'ai essayé 'toutes' les possibilités de cos, sin et PI.

Quelle algorithme me permettrait de trouver les points du cercle à
tout les 10 degrés si je connais le centre et le premier point formant
le rayon?


Précisions optionnelles:
-Mon programme utilise un shéma de fonction:
glBegin(GL_POLYGON);
glVertex2f(0.0,0.0);
glVertex2f(x2,y2);
glVertex2f(x3,y3);
...
glEnd();
Le logiciel rassemble tout les points et rempli l'intérieur d'une couleur.
-Il est possible, comme je suis sur une grosse calculatrice scientifique,
d'insérer des équations mathématiques dans une boucle de fonctions:
glBegin(GL_POLYGON);
glVertex2f(0.0,0.0);
for(int z=0; z!=36; z++){
glVertex2f(sin(x)*n,-cos(y)/n);
n =n+(z*10);
}
où z est une valeur mémoire à laquelle je peux accéder dans la boucle et qui est incrémenté à chaques passes de cette boucle.

voilà pour moi:

[IMG] http://cf.geocities.com/stefont16/cpt1.bmp [/IMG]

a++



Posted by: Frangine

Bonjour,

Pourquoi ne pas utiliser l'équation d'un cercle C de centre O de coordonnées (a;b) et de rayon R ?

M (x;y) appartient à C si et seulement si ses coordonnées vérifient :

(x-a)^2 + (y-b)^2 = R^2



Posted by: esselfe

J'ai bricolé:
void initCercle(void){
float angle1 =10.0;
float rayon1 =1.5;
float pointdecerclex[40],pointdecercley[40];
for(int xx =0; xx<36; xx++){
pointdecerclex[xx] =cos(angle1/rayon1);
pointdecercley[xx] =sin(angle1/rayon1);
angle1 +=10.0;
}
}












-