from_ greenass hansune
As 3.0
import flash.display.BitmapData;
var bmd:BitmapData = new BitmapData(80, 40, true, 0xFF44AACC);
var pixelValue:uint = bmd.getPixel32(1, 1);
var alphaValue:uint = pixelValue >> 24 & 0xFF;
var red:uint = pixelValue >> 16 & 0xFF;
var green:uint = pixelValue >> 8 & 0xFF;
var blue:uint = pixelValue & 0xFF;
trace(alphaValue); // 255
trace(red); // 68
trace(green); // 170
trace(blue); // 204
trace(alphaValue.toString(16)); // ff
trace(red.toString(16)); // 44
trace(green.toString(16)); // aa
trace(blue.toString(16)); // cc
var color:uint = uint("0x" + "ff" + "ee" +"aa");
trace(color); //16772778
trace(0xffeeaa); //16772778
trace(uint(16772778).toString(16)); //ffeeaa
var color2:Number = (256 << 16) | (215 << 8) | (80);
trace(color2); //16832336
///////////////////////////color 값 모션(예) ////////////
private function colorChange():void{
//boxColor 대상색상
var red:Number = boxColor >> 16 & 0xFF;
var green:Number = boxColor >> 8 & 0xFF;
var blue:Number = boxColor & 0xFF;
//바뀔 색상
var tgRed:Number = Number (colorArray[currentStep][i].r);
var tgGreen:Number = Number (colorArray[currentStep][i].g);
var tgBlue:Number = Number (colorArray[currentStep][i].b);
if(Math.abs(tgRed - red)<1){red = tgRed;} else {
red = red + (tgRed - red)*0.1;
}
if(Math.abs(tgGreen - green)<1){green = tgGreen;} else {
green = green + (tgGreen - green)*0.1;
}
if(Math.abs(tgBlue - blue)<1){blue = tgBlue;} else {
blue = blue + (tgBlue - blue)*0.1;
}
//24비트 컬러로 바꾸기 위해 unsigned integer 로 변환(안해도 자동으로 바뀌긴 함)
red = uint(red);
green = uint(green);
blue = uint(blue);
//이렇게 하면 색이 튄다.
//var color:uint = uint("0x" + red.toString(16) + green.toString(16) + blue.toString(16));
//정상적으로 작동
var color:uint = (red << 16) | (green << 8) | (blue);
boxColor = color;
}





