![]() |
Задать нужный цвет через flash.geom.ColorTransform
Вот такая вот незадачка... Мануал читал... ничего полезного там не обнаружил, увы...
Нужно из квадратика равномерно закрашеного в цвет 0x999999 получить квадратик закрашеный в цвет 0x8FBE00. Вобщем, сымитировать то, что можно получить в properties -> color -> tint: R=143, G=190, B=0. При чем свойство ColorTransform.rgb использовать нельзя, можно только непосредственно через задание параметров нового объекта ColorTransform. По принципу: var _ct:ColorTransform = new ColorTransform(x, x, x, x, x, x, x, x); Я ей богу умаялся... Или я плохо искал, или в мануале нигде не написано в чем же они меряют цвет, т.е. какие могут быть минимальные и максимальные значения. Методом проб и ошибок получаются самые дурацкие и абсолютно непредсказуемые результаты. Например, изменяя один параметр в сторону увеличения можно получить как красный так и зеленый (иногда желтый) цвет... :( А что такое alphaOffset и alphaMultiplier не понятно вообще... Ни в чем измеряется, ни на что влияет... Буду признателен за человеческое объяснение. |
Если я правильно понял, то при перекраске ручками
properties -> color -> tint: R=143, G=190, B=0. прозрачность выставляется 100%, иначе не получить требуемый цвет. То есть цвет квадратика до перекраски не имеет никакого значения, тогда Цитата:
а оффсеты, это нужные значения Код:
var myCT:ColorTransform = new ColorTransform(0, 0, 0, 0, 143, 190, 0, 255); |
спасибо, я понял в чем была ошибка, я думал, что альфа идет перед остальными каналами, а не после...
Только, если можно, тогда еще вопрос. Multiplier'ы могут быть от 0 до 255 или до 100? (на глаз тяжело определить) =) У оффсета может быть и отрицательное значение? |
В принципе они не ограничены, ставь, сколько влезет, пока есть визуальная разница.
Оффсет может быть и отрицательным. |
:umnik2: Умники помогите нубу
Я подгружаю .swf таким способом... Код:
var mc0:MovieClip = this.createEmptyMovieClip ("mc0" + this.getNextHighestDepth(), this.getNextHighestDepth()) |
Код:
import flash.geom.ColorTransform; |
Что-то у меня есть подозрение, что это надо делать после загрузки.
tuzhila, отказаться от loadMovie и использовать MovieClipLoader. После загрузки (onLoadInit) повесить ColorTransform (пример выше, за исключением загрузки). |
Ребят, а как программно менять цвет у объекта постепенно? допустим с цвета #999999 до #E00547.
например при наведении на объект мышкой он начинает изменять цвет, а при сведении он менял цвет обратно (при чем хочется учесть то что откат цвета должен происходить с того цвета до которого объект успел видоизмениться). |
Код:
var _null:Number = 0x000000; |
|
| Часовой пояс GMT +4, время: 07:28. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.