Différences entre les versions de « Programmation objet et géométrie/Les lignes droites de canvas »

 
=Arbre de Stern-Brocot=
 
[[Fichier:Sternbrocot.jpg|320px|right]]
 
L'utilisation de boucles JavaScript permet de construire des polygones très complexes, comme par exemple le [[w:Flocon de von Koch|flocon de Von Koch]]. Ici on va plutôt dessiner l'[[w:Arbre de Stern-Brocot|arbre de Stern-Brocot]]. Le dessin d'un arbre se fait par récurrence: Le principe est de dessiner la branche gauche et la branche droite (des segments) puis de rajouter à leur extrémité un (sous-)arbre. Pour calculer les coordonnées des extrémités des segments, on utilise le développement en fraction continue d'une fraction:
 
La condition pour finir la récurrence est la taille du dénominateur: S'il est trop grand (en pratique, supérieur ou égal à 400) la fraction est proche de la [[w:Canopée|canopée]] de l'[[w:Arbre binaire|arbre]] (l'axe des abscisses) et on s'arrête.
 
==Calculs sur les fractions==
 
Comme on ne fait pas assez de calculs sur les fractions, il n'est pas absolument nécessaire de créer un objet ''fraction'' en JavaScript. On se contentera ici de représenter la fraction <math>\frac{p}{q}</math> par le tableau ''[p,q]''. De même, la fraction continue (une suite d'entiers naturels) sera représentée par un tableau JavaScript.
 
===Conversion en fraction continue===
 
===Conversion en fraction===
 
===Fils d'une fraction===
 
===Fille d'une fraction===
 
==Dessin de l'arbre==
 
===Définition récursive===
 
===Arbre de Stern-Brocot===
1 277

modifications