Non, tu ne peux pas regagner la précision que tu as perdu.
Il s'agit avant tout de robustesse.
Sur ta feuille de papier tu fais des calculs exacts tels
que a + b - b == a.
Sur ton ordinateur ce n'est pas le cas. Dans le cas où tu as déterminé que la valeur exacte du résultat importe moins que le fait que a == a, alors il faut utiliser un epsilon ou valeur d'erreur acceptable dans ton calcul d'égalité (a <= a+e && a >= a-e). En faisant ça tu perds de la précision ! donc si b est plus petit que epsilon ça n'a aucun sens et il faut que tu fasses tes calculs autrement (changer l'algorithme ou l'ordre des calculs ou la limite de la précision de tes flottants).
jfken2000 a écrit :
Pourquoi dans un calcul d'eclairage a t on besoin d'un vecteur de longueur 1???
|
Il ne s'agit pas de n'importe quel vecteur. Il s'agit de la normale à la surface qui est une représentation symbolique de l'orientation de ta surface. Cette normale n'a pas d'unité (la valeur de l'éclairement en un point ne varie pas en fonction de la taille de la surface élémentaire utilisée pour faire le calcul en ce point). On lui donne donc une norme de valeur arbitraire de 1 qui servira de référence dans tous les calculs d'illumination faisant intervenir cette normale.
L'avantage de 1 c'est que si l'intensité lumineuse est L, le coefficient
de diffusion est d (modèle de Lambert), alors l'illumination maximale du vecteur lumière d'intensité L, est simplement L*d.