AS3位图扭曲
DisplacementMapFilter 类使用指定的 BitmapData 对象(称为置换图图像)的像素值执行对象置换。 您可以使用此滤镜将扭曲或斑点效果应用于从 DisplayObject 类中继承的任何对象,例如 MovieClip、SimpleButton、TextField 和 Video 对象,以及 BitmapData 对象。
import flash.display.Bitmap;
import flash.display.BitmapData;
var picWidth:Number = 450;
var picHeight:Number = 450;
var endColor:uint = 0xff8080;//红色
var startColor:uint = 0x008080;//蓝色
var middleColor:uint = 0x808080;//中间色(灰色)
var myBitmapData:BitmapData = new BitmapData(picWidth,picHeight);
function drawMapBitmap(targetData:BitmapData,width:Number,height:Number):BitmapData {
var colorDistH = (middleColor - startColor)/picHeight;
for (var h=0; h<height; h++) {
var thisStartColor:uint = startColor + h*colorDistH;
var thisEndColor:uint = endColor - h*colorDistH;
var thisColorDistW = (thisEndColor - thisStartColor)/picWidth;
for (var w=0; w<width; w++) {
var pixelColor:uint = thisStartColor + w*thisColorDistW;
targetData.setPixel(w,h,pixelColor);
}
}
return targetData;
}
var myBitmap:Bitmap = new Bitmap(drawMapBitmap(myBitmapData,picWidth,picHeight));
addChild(myBitmap);
补充:flash教程,动画技术