![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
blacks, Вы запутались в своих желаниях! С одной стороны, Вы хотите все оптимизировать до одной строчки, с другой стороны Вам надо чтоб этот код был универсальным. Универсальный код уже написан - это классы. Поверьте, еслиб можно было универсальность както еще оптимизировать, наши глубокоуважаемые мэтры сделали бы это. Но увы.
Частный код всегда короче и производительней, так как содержит только необходимые в конкретном случае расчеты. Например, для преобразования из красного 0хff0000 в белый 0xffffff надо всеголишь поднимать значения зеленого и синего с 0 до 255, причем на одинаковую величину. Но для преобразования произвольного цвета в другой произвольный цвет понадобится код раз в десять увесистей. Я бы рекомендовал такой подход в Вашем случае - создать "карту преобразований" Звучит страшно, но я имею в виду совсем простую вещь - Вам надо создать преобразование некоторой переменной (назовем ее дельта) в известном Вам диапазоне, например от 0 до 100, и все остальные преобразования (блюра, альфы, цвета и т.п.) производить от величины этой переменной. Напр. когда дельта 100 - блюр 0, альфа 100 цвет 0xffffff, а когда дельта 0 - блюр 10, альфа 0, цвет 0x663399. Таким образом, сначала создаете формулу, преобразующую позицию Х Вашего мувика в величину дельта, потом считает остальные параметры.
__________________
Reality.getBounds(this); |
![]() |
Часовой пояс GMT +4, время: 05:45. |
|
|
« Предыдущая тема | Следующая тема » |
|
|