Просмотр полной версии : Минимальное приращение координаты.
Так вышло, что мне клип надо было сдвигать на очень маленькое значение. И я столкнулся с проблемкой.
(Извините, если это всем известно.)
mov._x+=1/25; //(в цикле)
Из-за этой строки я чуть не свихнулся, потому что приращение оказалось может быть только кратным 0.05 :)
Т.е. 0.04 прибавить невозможно, оно все равно будет прибавлять 0.05.
Соответственно пришлось вводить какую-то "левую" переменную и "накручивать" ее.
Вот просто интересно - кто-нибудь сталкивался?
как-то не приходилось... :)
Точность математических операций, оставляет желать лучшего.
Пример
for (var i = 6; i < 10; i += .1) {
trace (i);
}
Мдя :)
Но это все-таки несколько другой случай.
Тут - явная погрешность вычислений.
Мой же случай - связан именно с координатой.
Там стоит какое-то специальное ограничение, связанное, возможно, с тем, что вряд ли кому-то придется наращивать координату на такое маленькое значение. А у меня такая задача была, один объект должен двигаться в 25 раз медленне другого. И вот тут синхронизация неожиданно (для меня) нарушилась и я долго не мог найти причину.
(Вдруг кому-то пригодится... не наступайте на мои грабли :) )
Колин Мука:
Дробные значения _x аппроксимилируются во Flash с помощью сглаживания. Базовая единица измерения во Flash - 1/20 часть пиксела, поэтому минимальное допустимое перемещение клипа составляет 0,05 пискела.
Обойти можно есть два способа:
1. Ввести переменую которой присваивать значение +0.04, эту переменную потом присваивать как координату. Ошибки все равно будут, но они не будут накапливаться.
2. Увеличить объекты в 25, приращение увеличить до 1, и все это засунуть в клип который уменьшить в 25 раз. :)
Именно первый вариант я и реализовал.
А насчет Колин Мука - нету пока книги.
Три недели назад заказал по Инету и вот пока все жду...
Надеюсь, с появлением книги и некоторые другие вопросы разрешатся :)
iNils, спасибо за ответ.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.