Pour calculer la nouvelle teinte de la face, connaissant sa couleur en « pleine
lumière », nous utilisons le cosinus de l'angle entre le faisceau et la normale.
En effet, si une quantité de lumière vient frapper orthogonalement une longueur
, on suppose que l'intensité lumineuse a pour valeur
. Alors, si la même quantité
vient frapper une longueur
, l'intensité sera
. Or, comme le montre la FIGURE 5,
. Pour obtenir alors la nouvelle couleur, on multiplie la
couleur initiale par le cosinus de l'angle entre le faisceau et la normale à
la face que l'on extrait du produit scalaire entre ces deux vecteurs. On modifie
alors la fonction
select
(cf. PROGRAMME 10)
pour qu'elle calcule les nouvelles couleurs, ainsi que le produit scalaire que
l'on « normalise ».