![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jan 2007
Сообщений: 368
|
Подскажите алгоритм создания палитры цветов для колорпикера. Нужно в одном клипе рядом разместить около 100 различных цветов
|
|
|||||
|
[+4 06.05.14]
|
Алгоритмов наверное много. Ну попробую описать как бы делал я.
Скорее всего циклом разместил бы цвета, через duplicate клип, чтобы вся коробка цветов была из мувиклипов. Ну а потом события поствить типа . Ну а там уже при нажатии на клип у которого хотим изменить цвет использовать setRGB методы. Скорее всего это все проще сделать через битмапдату. Но я с ней не разбирался ибо не приходилось. Может кто еще подскажет |
|
|||||
|
Да, через BitmapData.
и рисуем квадратик в битмап дату, а цвет потом оттуда берём через getPixel
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Действительно лучше через битмап. Можно нарисовать палитру какую тебе надо, потом перевести её в битмап, и с неё уже брать цвета.
1) сделай клип палитру, (palitra) можно прямоугольником и например залей его градиентом (всеми цветами). Только точку трансформации вверху слева. 2) создай клип (clip), цвет которого будет изменятся. 3) код: import flash.display.BitmapData; //создаем битмапу с размерами как и палитра var bm:BitmapData = new BitmapData(palitra._width, palitra._height, false, 0x000000); //в битмапе рисуется палитра bm.draw(palitra); //к палитре прикрепляем битмапу palitra.attachBitmap(bm,1); //color что бы именять цвет клипа var color:Color = new Color(clip); //и при клике на палитре palitra.onPress = function() { //определяем цвет пиксела под курсором var temp = "0x" + bm.getPixel(_xmouse - this._x, _ymouse - this._y).toString(16); //назначаем цвету color.setRGB(temp); }; |
![]() |
![]() |
Часовой пояс GMT +4, время: 14:19. |
|
|
« Предыдущая тема | Следующая тема » |
|
|