TRACER UN CERCLE SANS : SIN() , COS() NI LA PROPRIÉTÉ CIRCLE [QUE DU CALCUL (

Nargzul Messages postés 438 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 26 juillet 2007 - 1 juil. 2003 à 08:49
bobafett2311 Messages postés 1 Date d'inscription vendredi 9 avril 2004 Statut Membre Dernière intervention 16 août 2004 - 16 août 2004 à 10:31
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7718-tracer-un-cercle-sans-sin-cos-ni-la-propriete-circle-que-du-calcul-rapide-en-fait

bobafett2311 Messages postés 1 Date d'inscription vendredi 9 avril 2004 Statut Membre Dernière intervention 16 août 2004
16 août 2004 à 10:31
il suffit d'utiliser le fait que sin² + cos² = 1 ce qui fait en remplacant : X² + Y² = 1 X et Y étant les coordonnées des points du cercle de centre O(0;0)

suffit de faire varier Y de -1 à 1 par pas très faible (genre 0.01 ou 0.01) on obtient X ( racine_carre(1-Y²) )
et le tour est joué !
Nargzul Messages postés 438 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 26 juillet 2007 4
1 juil. 2003 à 16:33
je dis pas le contraire, je dis juste ke ton titre est faux, je sais bien ke c casi impossible sans...
cs_Zeroc00l Messages postés 367 Date d'inscription lundi 1 avril 2002 Statut Membre Dernière intervention 11 février 2010
1 juil. 2003 à 16:16
Nargzul => Si tu avait un langage qui ne possede pas les fonctions cos() et sin() Comment ferai tu ?
Ici le code, ne demande que 2 valeurs ( en fait 4 avec cos(0) et sin(0) )
Un algo utilisant sin et cos ne pourrai etre retranscrit ! Avec celui la on contourne le problème en ne lui fournissant que 3 valeurs (connues), ce qui est relativement faible !

Craps => C'est un code sans prétention qui, a la base, n'est pas fait pour tracer 1 000 000 de cercles !
Il suffit amplement pour des softs de dessinage genre Paint brush etc ... où on trace une dizaine de cercles au max ; si par exemple on est contraint de ne pas utiliser cos et sin (et la fonction circle ou bien une homogue dans un autre langage )!
( De toutes façons quand on utilise paintbrush c'est qu'on a du temps à perdre ! :p )
Ce code permet de tracer une petite dizaine de cercles que l'utilisateur demande , pas pour mettre dans une boucle i=1 to 1000000 c'est évident ! :)
cs_Craps Messages postés 3 Date d'inscription vendredi 1 mars 2002 Statut Membre Dernière intervention 1 juillet 2003
1 juil. 2003 à 09:27
il existe surtout des algos aui permettent de n'utiliser que des additions... et donc assez rapide, si ca te bote, je peux essayer de retrouver la source (pbeck@gphy.campus.univ-poitiers.fr)
car la tu utilise les racines carre, fodrait faire des tests en tracant 1 million de cercle successif, pour voir....
Nargzul Messages postés 438 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 26 juillet 2007 4
1 juil. 2003 à 08:49
euh
TRACER UN CERCLE SANS : SIN() , COS() NI LA PROPRIÉTÉ CIRCLE [QUE DU CALCUL (RAPIDE) EN FAIT ]


et pis

Il n'y a donc que 2 valeurs qui sont vraiment a connaitre (dur !!! ) pour tracer le cercle : Cos( 2.Pi/3 ) et Sin(2.Pi/3 )
-1/2 sqr(3)/2

un peu contradictoire....
Rejoignez-nous