Показать сообщение отдельно
Старый 10.06.2008, 08:41
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 50  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

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