Guillot a écrit : lun. 20/mars/2023 8:27
des fois ça passe, des fois ça passe pas
ce code que j'ai décomposé ne passe jamais et je ne vois aucune erreur de parenthèse.
Code : Tout sélectionner
Define n0.vector3
Define n1.vector3
Define r1.f = Pow(n0\x − n1\x, 2)
Define r2.f = Pow(n0\y − n1\y, 2)
Define r3.f = Pow(n0\z − n1\z, 2)
Result.f = Sqr(r1 + r2 + r3)
Fig a écrit : dim. 19/mars/2023 18:35
je décompose tous les calculs car le mélange d'entier et de flottants et de parenthèses, avec Pb, ça fait des erreurs compliquées à localiser.
J'ai décomposé le code précédent.
Code : Tout sélectionner
Define n0.vector3
Define n1.vector3
Define r1.f = Pow(n0\x − n1\x, 2)
Define r2.f = Pow(n0\y − n1\y, 2)
Define r3.f = Pow(n0\z − n1\z, 2)
Result.f = Sqr(r1 + r2 + r3)
Même message d'erreur que précédemment.

Pour ne pas avoir d'erreur je suis obligé de décomposer de cette maniére
Code : Tout sélectionner
Define n0.vector3
Define n1.vector3
Define n0x.f = n0\x
Define n0y.f = n0\y
Define n0z.f = n0\z
Define n1x.f = n1\x
Define n1y.f = n1\y
Define n1z.f = n1\z
Define rx.f = n0x - n1x
Define ry.f = n0y - n1y
Define rz.f = n0z - n1z
Define r1.f = Pow(rx, 2)
Define r2.f = Pow(ry, 2)
Define r3.f = Pow(rz, 2)
Result.f = Sqr(r1 + r2 + r3)
C'est pas un peu trop ?
Le code initial en beaucoup plus court était celui là sur trois lignes. Mais ça ne fonctionne pas !
Code : Tout sélectionner
Define n0.vector3
Define n1.vector3
Result.f = Sqr(Pow(n0\x − n1\x, 2) + Pow(n0\y − n1\y, 2) + Pow(n0\z − n1\z, 2))