BitmapData에는 붙투명 이미지인 24비트의 getPixel()과 setPixel(), 알파채널이 포함된 32비트의 투명데이터를 설정하는 getPixel32() , setPixel32()를 제공한다. 이는 데이터 안에 한픽셀에 해당하는 값을 읽거나 설정하기 위해 사용된다.
* setPixel32 / setPixel
데어터의 해당 좌표에 한 점의 색을 설정할 수 있다. setPixel는 24비트로 불투명 컬러를 지원하고 setPixel32 는 32비트로 불투명 - 반투명 - 투명의 컬러를 지원한다.
위 무비의 경우는 가로 세로100픽셀의 비트맵 데이터를 만들고 가로세로 랜덤하게 불투명 0xFFFF0000 인 빨간점을 찍고 투명 데이터인 0x00000000인 투명점을 랜덤하게 찍었다.
bitmapData.setPixel32( Math.round(Math.random()*100 ) ,
Math.round(Math.random()*100 ) ,
0xFFFF0000 );
bitmapData.setPixel32( Math.round(Math.random()*100 ) ,
Math.round(Math.random()*100 ) ,
0x00000000 );
결과는 보이는 것과 같이 빨간점과 배경의 색(초록)을 보여주는 투명점이 setPixel32에 의해서 설정되었다.
* getPixel32 / getPixel
비트맵 데어터의 해당하는 한 좌표에 있는 픽셀값을 getPixel는 24비트로 getPixel32는 32비트로 읽어온다.
var colorVal:Number = _bitmap.getPixel( mouseX ,mouseY );
_prevData.fillRect( new Rectangle(0,0,10,10) , colorVal );
_txt.text = "#" + colorVal.toString(16).toUpperCase();