function IN_Between(a,b,index,max:real):integer; begin if max=0.0 then IN_Between:=round(a) else IN_Between:=round(a+index*(b-a)/max); end;
Si vous savez comment diviser une ligne en segments égaux alors vous devez comprendre comment générer autant de chemins de dessins successifs pour les relier.
a et b étant les positions extrêmes d'un segment de droite sur un axe, alors la fonction IN_Between
est appelée autant de fois que vous voulez générer de points intermédiaires en faisant varier index jusqu'à max.
Si les couleurs sont différentes d'un point à l'autre, il suffit d'extraire ses composantes de couleur : rouge, vert, bleu de chaque élément est de remplacer a et b par r1 et r2 la valeur de rouge de départ et de fin de la même façon pour les autres composants.
Dans le dialogue Entre-deux vous pouvez déterminer le nombre d'étapes intermédiaires.
Dans le dialogue Interpolation une réglette permet de positionner des couleurs intermédiaires et de visualiser en temps-réel l'affichage du dégradé de couleur.
Faire varier un ensemble de points vers un autre, voilà ce que réalise la fonction entre-deux.
Pour cela une spécificité du dessin vectoriel propre à Denis-Draw demande à ce que le nombre et le type des points de contrôle de chemin soient d'une forme à l'autre similaires. Comme expliqué plus haut, la génération de la première courbe vers la seconde courbe génère autant de courbes de passage de l'une vers l'autre selon le nombre d'intervalles définies.
Et autant de points de contrôle de chemin, se déplaçant des uns vers les autres.
La fonction Interpolation n'agit pas différemment, mais permet aussi d'ajouter des couleurs intermédiaires qui seront appliquées à chaque étape du dessin des courbes intermédiaires.
Denis Bertin le 19-09-2009