TRACER UN CERCLE SANS : SIN() , COS() NI LA PROPRIÉTÉ CIRCLE [QUE DU CALCUL (
Nargzul
Messages postés438Date d'inscriptionvendredi 9 mai 2003StatutMembreDernière intervention26 juillet 2007
-
1 juil. 2003 à 08:49
bobafett2311
Messages postés1Date d'inscriptionvendredi 9 avril 2004StatutMembreDernière intervention16 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.
bobafett2311
Messages postés1Date d'inscriptionvendredi 9 avril 2004StatutMembreDernière intervention16 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és438Date d'inscriptionvendredi 9 mai 2003StatutMembreDernière intervention26 juillet 20074 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és367Date d'inscriptionlundi 1 avril 2002StatutMembreDernière intervention11 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és3Date d'inscriptionvendredi 1 mars 2002StatutMembreDerniè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és438Date d'inscriptionvendredi 9 mai 2003StatutMembreDernière intervention26 juillet 20074 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
16 août 2004 à 10:31
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é !
1 juil. 2003 à 16:33
1 juil. 2003 à 16:16
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 ! :)
1 juil. 2003 à 09:27
car la tu utilise les racines carre, fodrait faire des tests en tracant 1 million de cercle successif, pour voir....
1 juil. 2003 à 08:49
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....