ActionScript 3 AS3使用SetPixel创建电视静态类型效果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ActionScript 3 AS3使用SetPixel创建电视静态类型效果相关的知识,希望对你有一定的参考价值。

var imgData:BitmapData = new BitmapData(550, 400, false, 0x000000);
var bmp:Bitmap = new Bitmap(imgData);

fillBitmapDataWithRandomPixels(imgData);
blackAndWhite(bmp, true);
addChild(bmp);

var myTimer:Timer = new Timer(50);
myTimer.addEventListener(TimerEvent.TIMER, onMyTimer_TIMER);
myTimer.start();

function onMyTimer_TIMER(event:TimerEvent):void {
	fillBitmapDataWithRandomPixels(imgData);
}

function blackAndWhite($target:DisplayObject, $enabled:Boolean):void
{
	var rc:Number = 1/3;
	var gc:Number = 1/3;
	var bc:Number = 1/3;
	var cmf:ColorMatrixFilter = new ColorMatrixFilter([rc, gc, bc, 0, 0, rc, gc, bc, 0, 0, rc, gc, bc, 0, 0, 0, 0, 0, 1, 0]);

	if ($enabled) {
		$target.filters = [cmf];
	} else {
		$target.filters = [];
	}
}

function fillBitmapDataWithRandomPixels($bmp:BitmapData):void {
	$bmp.lock();
	var colour:uint;
	for (var i:int = 0; i < $bmp.height ; i++) {
		for (var j:int = 0; j < $bmp.width; j++) {
			colour = Math.random() * 0xFFFFFF;
			$bmp.setPixel(j, i, colour);
		}
	}
	imgData.unlock();
}

以上是关于ActionScript 3 AS3使用SetPixel创建电视静态类型效果的主要内容,如果未能解决你的问题,请参考以下文章

ActionScript 3 AS3:在ActionScript中使用E4X生成动态XML

ActionScript 3 使用Blitting的AS3动画

ActionScript 3 AS3:使用POST发送数据

ActionScript 3 在AS3中使用麦克风

ActionScript 3 使用AS3读取不同的文件类型

ActionScript 3 AS3使用RegExp检查数字和字母