Тема: RGB
Показать сообщение отдельно
Старый 15.09.2005, 19:46
Stone вне форума Посмотреть профиль Отправить личное сообщение для Stone Найти все сообщения от Stone
  № 1  
Ответить с цитированием
Stone
 
Аватар для Stone

Регистрация: May 2001
Адрес: Москва
Сообщений: 670
По умолчанию RGB

у меня есть переменные равные r=255 g=255 b=255
как мне представить это в виде "0x000000"?

сделал через присвоение мувику и считывание его RGB, но что-то некрасиво как то. может есть что по элегантней?

_root.createTextField("r",1,10,10,40,20);
_root.createTextField("g",2,10,30,40,20);
_root.createTextField("b",3,10,50,40,20);

_root.r.type = "input";
_root.r.maxChars = 4;
_root.g.type = "input";
_root.g.maxChars = 4;
_root.b.type = "input";
_root.b.maxChars = 4;

_root.r.text = 255;
_root.g.text=0;
_root.b.text=0;

_root.r.onChanged=function(){
_Color()
}
_root.g.onChanged=function(){
_Color()
}
_root.b.onChanged=function(){
_Color()
}
_root.createEmptyMovieClip("mc",-1);
function _Color(){
my_color=new Color(mc);
myColorTransform = new Object();
myColorTransform = { ra: Number(_root.r.text), rb: Number(_root.r.text), ga: Number(_root.g.text), gb: Number(_root.g.text), ba: Number(_root.b.text), bb: Number(_root.b.text), aa: '100', ab: '100'};
my_color.setTransform(myColorTransform);
colr=my_color.getRGB().toString(16);
trace(colr);
_root.clear();
_root.beginFill("0x"+colr,100);
_root.moveTo(100,10);
_root.lineTo(200,10);
_root.lineTo(200,110);
_root.lineTo(100,110);
_root.lineTo(100,10);
}
function onEnterFrame(){
if(_root.r.text>0){
_root.r.text--;
_root.g.text++;
}else if(_root.g.text>0){
_root.g.text--;
_root.b.text++;
}

_Color();
}