![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Feb 2012
Сообщений: 11
|
С добрым утром! Есть задача перемещать объекты по кривой траектории слева направо и справа налево, меняя их скорость в зависимости от угла наклона. Столкнулся с проблемой при сложении и вычитании дробного числа. Код такой:
var angle:Number = getAngle(object.x, object.direction); var speed:Number = object.speed * Math.cos(angle / 180 * Math.PI); object.x += object.direction ? -speed : speed; trace("---"); trace(speed); trace(object.x); --- 1.986476715483886 71.95 --- 1.98779389282904 73.9 --- 1.9902263669020062 75.85 Результат при вычитании object.x = 1410: --- 1.969615506024416 1408 --- 1.9771634389942234 1406 --- 1.9836407030825234 1404 Как видно во втором случае вычитаемое он округляет в большую сторону, а в первом: 70 + 1.986 = 71.95 как??? Подскажите, пожалуйста, в чем дело и как с этим бороться? |
![]() |
Часовой пояс GMT +4, время: 14:20. |
|
|
« Предыдущая тема | Следующая тема » |
|
|