透明な矩形をBitmapDataで描画してみる。
♥0 |
Line 30 |
Modified 2010-01-21 21:11:13 |
MIT License
archived:2017-03-10 13:18:19
ActionScript3 source code
/**
* Copyright taromisako ( http://wonderfl.net/user/taromisako )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/xRAq
*/
package {
import flash.display.Sprite;
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.filters.*;
import flash.utils.*;
import flash.geom.*;
import net.hires.debug.Stats;
[SWF(frameRate="60", width="465", height="465")]
public class FlashTest extends Sprite {
// 表示用の透明なBitmapData
private var bitmapData:BitmapData = new BitmapData(465, 465, true, 0x00000000);
private var bitmap:Bitmap = new Bitmap();
private var parts:BitmapData = new BitmapData(50, 50, true, 0x22003300);
public function FlashTest() {
// 配置する
stage.addChild(bitmap);
// Statsを表示
addChild(new Stats());
// イベントリスナー(昔はメインループって呼んでたなあ…)
addEventListener(Event.ENTER_FRAME, draw);
}
// フレーム毎に行われる処理
private function draw(e:Event):void {
// 画面を消去
bitmapData.fillRect(new Rectangle(0, 0, 465, 465), 0x00FF0000);
var rect:Rectangle = new Rectangle(0, 0, 5, 5);
for(var i:int=0; i<10000; i++) {
var point:Point = new Point(Math.floor(Math.random() * 465), Math.floor(Math.random() * 465));
bitmapData.copyPixels(parts, rect, point, null, null, true);
}
// bitmapDataをbitmapに登録する
bitmap.bitmapData = bitmapData;
}
}
}