Forum de la communauté SFML

Aide => Graphique => Discussion démarrée par: Fifut le Mai 30, 2013, 01:42:28 pm

Titre: Problème avec sf::Vector2f
Posté par: Fifut le Mai 30, 2013, 01:42:28 pm
Salut à tous!

Je rencontre un problème avec sf::Vector2f.

Lors de l'exécution de ce code :
sf::Vector2f vect1;
vect1 = sf::Vector2f(0.2f,1.0f);
Je me retrouve avec vect1.x = 0.20000002  :o

Sachant que je déclare de la même façon d'autres sf::Vector2f est qu"il ne pose pas de problème.

Quelqu'un à une idée parce que WTF là!  ;D

Ps: j'ai l'impression que se son les valeur 0.2f et 1.0f qui pose problème, si je met (0.5f,1.5f) par exemple, là sa fonctionne.
Titre: Re : Problème avec sf::Vector2f
Posté par: Laurent le Mai 30, 2013, 02:19:54 pm
Les nombres flottants n'ont pas tous une représentation exacte. Ca n'a rien à voir ni avec SFML, ni avec C++, mais avec le standard IEEE-754 qui décrit comment sont encodés les nombres flottants en mémoire.

Du coup, certains nombres du genre 0.2 ne peuvent pas être représentés de manière exacte en mémoire, et donc ne peuvent pas être relus tels quels.
Titre: Re : Problème avec sf::Vector2f
Posté par: Fifut le Mai 30, 2013, 02:32:20 pm
OK!

Merci pour l'info!

 ;)