math_set_epsilon

Définissez la "machine epsilon" pour les calculs à virgule flottante.

Syntaxe:

math_set_epsilon(epsilon);


Argument La description
epsilon La nouvelle valeur epsilon (de 0 à 0,999999999).


Retours: Real


La description

Epsilon est une valeur utilisée pour déterminer si deux nombres sujets à une erreur d'arrondi sont suffisamment proches pour être considérés comme «égaux». Il est utile lorsque vous manipulez des maths en virgule flottante car il peut réduire les "erreurs d'arrondi" qui font que certaines opérations renvoient des valeurs qui semblent incorrectes ou contraires à nos attentes. Par exemple, nous avons peut-être ajouté une valeur à l'index d'image d'une image-objet et attendons que le résultat soit un entier unique, mais en raison de la nature des calculs en virgule flottante, la valeur finale réelle est quelque chose comme 5.0000002. avoir la vérification suivante:

if image_index == 5 {do something}

Le code ne se comporte pas comme prévu et renvoie false. Cependant, si nous définissons la valeur epsilon sur 0.000001, la valeur image_index sera arrondie au nombre réel le plus proche, soit +/- 0.000001 de la valeur d'origine, ce qui rendra la comparaison ci-dessus vraie.

La valeur epsilon sera utilisée pour tous les opérateurs entiers suivants:

Notez que la définition d'une valeur epsilon de 0 désactivera tous les arrondis et l'utilisation d'une valeur de 1 entraînera une erreur.


Exemple:

math_set_epsilon(0.0001);

Cela définira la valeur epsilon pour toutes les autres opérations à virgule flottante.


Retour: Maths
Suivant: math_get_epsilon
© Copyright YoYo Games Ltd. 2017 Tous droits réservés