Je travaille sur un langage de programmation ou la fonction arc cosinus est absente. Il s'agit de Lingo (Director). Je veux faire du billboard dans Shockwave3D et j'ai besoin de cette fonction.
En effet, dans le billboard, on calcule la rotation d'un objet par rapport à la position de la caméra de la manière suivante :
Si j'ai la position de la caméra (x0,z0) et la position de l'objet billboard (x2,z2), je trouve que :
cos(angle) = (z2-z0)/(racineCarree((x2-x0)^2 + (z2-z0)^2)
Ceci se déduit de 2 formules de calcul des produits scalaires.
Notez au passage que l'angle de rotation de la caméra n'influe pas sur l'angle de rotation de l'objet billboard.
Le problème est que j'ai le cosinus de l'angle, mais pas l'angle lui même et en Lingo, la fonction arccos n'existe pas (ou alors, je ne l'ai pas trouvée).
Il y a cependant la fonction arc tangente, cosinus, et sinus. Je voudrais savoir si je peux déduire l'arccos des fonctions existantes.
Sinon, je voudrais faire une table de cosinus et employer une méthode dichotomique afin de trouver une valeur proche.
Que pensez-vous de cette solution?
La dernière solution consisterait à implémenter moi même la fonction arc sinus à partir de sa série.
Je voudrais connaître des avis afin de savoir quelle serait la meilleure méthode.
Merci
Partager