可用遮罩来做位图飘动
效果,下面是用BitmapData类来做的。
导入一张图片,连接名设为:51hkj
图片不能太大,否则有点慢。
以下代码放入第一帧:
复制内容到剪贴板
代码:
import flash.display.BitmapData;
import flash.geom.*;
//库里的位图连接名为:51hkj
var my51hkj:BitmapData = BitmapData.loadBitmap("51hkj");
var mcw:Number = my51hkj.width;
var mch:Number = my51hkj.height;
var my51hkj2:BitmapData = new BitmapData(mcw, mch+20, false, 0xFFFFFd);
var mc:MovieClip=this.createEmptyMovieClip("mc", this.getNextHighestDepth())
mc.attachBitmap(my51hkj2, this.getNextHighestDepth());
var n:Number = 8;//振幅,像素
var k:Number = 2*(2*Math.PI/mcw);//周期
var j:Number = 0;
var mRect:Rectangle=new Rectangle(0, 0, 1, mch+20);
var mPoint:Point=new Point(0,0);
this.onEnterFrame = function() {
j+=1;
for (var i = 0; i<=mcw; i+=1) {
mRect.x=i;
mPoint.x=i;
mPoint.y=10+n*Math.sin((i+j)*k);
my51hkj2.fillRect(mRect,0x00FFFFFd);
my51hkj2.copyPixels(my51hkj, mRect, mPoint);
//my51hkj2.copyPixels(my51hkj, new Rectangle(i, 0, 1, mch), new Point(i, 10+n*Math.sin((i+j)*k)));
}
};