■ ビットマップイメージをピクセル単位で編集するには
//メインタイムラインのフレームアクション
import
flash.display.BitmapData;
this.photo_bmd
= BitmapData.loadBitmap("photo");
this.bmW = 140;
this.bmH = 105;
this.defaultColor = 0x999999;
this._bmd = new BitmapData(this.bmW,this.bmH,false,this.defaultColor);
this._mc = this.createEmptyMovieClip("bm_mc",100);
this._mc.attachBitmap(_bmd,10);
this._mc._x = 170;
this._mc._y = 70;
this._btn.onRelease =
function(){
_bmd.fillRect(_bmd.rectangle,defaultColor);
count = 0;
onEnterFrame = function(){
if (count < bmW *
bmH){
var theX = count % bmW;
var theY = Math.floor(count
/ bmW);
var photoColor = photo_bmd.getPixel(theX,
theY);
_bmd.setPixel(theX, theY,
~photoColor);
}else{
delete onEnterFrame;
}
count++;
}
};
※.このサンプルはActionScript2.0でパブリッシュする必要があります。
--------
サンプル2
//メインタイムラインのフレームアクション
import
flash.display.BitmapData;
this._bmd = new BitmapData(320,240,true,0x66FFFF00);
this.attachBitmap(_bmd,10);
this.onMouseDown =
function(){
this.onMouseMove =
function(){
updateAfterEvent();
for (var i = 0; i < 10;
i++){
_bmd.setPixel32(this._xmouse
+ xGetRandom(), this._ymouse
+ xGetRandom(), 0xCCFF0000);
}
};
this.onMouseUp = function(){
delete this.onMouseMove;
delete this.onMouseUp
};
};
function xGetRandom(){
return Math.floor(Math.random()
* 7) - 3;
}
※.このサンプルはActionScript2.0でパブリッシュする必要があります。

