此类
动画,其实不用BitmapData、ColorTransform这两个类,也能做到。当然,这里是为了
学习,所以就用了一下。
1、新建一
文件。设置背景色为黑色。然后帧频为60帧/秒。这样是为了流畅。
2、新建两图层。一背景层,一AS层。
3、选择矩形工具在舞台中绘制一背景。大小为550*400。颜色设置为线性填充。
4、
创建一个影片剪辑。
5、然后做如下设置,为了场景中AS能调用此元件。
6、然后选择多角工具。
7、在属性面板中点选项
按钮。
8、做如下设置:
9、填充的时候,设置成放射性填充。
10、然后分别插入要害帧。并且修改元件中的颜色
效果。这里随便选择颜色就行了。
11、添加AS:
//================版权声明开始================//
//★淘沙网:http://www.taoshaw.com
//★淘沙网所有教程欢迎转载。不过请转载时注明出处。谢谢合作。
//================版权声明结束================//
//导入类
import flash.display.BitmapData;
import flash.geom.*;
Stage.scaleMode = ’noScale’;
//屏蔽右键
var my_mc:ContextMenu = new ContextMenu();
//隐藏右键
my_mc.hideBuiltInItems();
_root.menu = my_mc;
// 是否形成块状带
var my_Init_fang = 0;
var my_jiaodu_In = 1.8;
//速度
var my_Init_Speed = 7;
var my_chushiSpeed = 1;
var my_ifxuandu = 0.99;
var my_cengji = 0;
this.createEmptyMovieClip("my_mc1", 1);
this.createEmptyMovieClip("my_mc2", 2);
var my_ceng_map = new BitmapData(300, 300, true, 0);
var my_ceng_2_map = my_ceng_map.clone();
my_mc1.attachBitmap(my_ceng_map, 1);
var my_transmatrix = new Matrix();
var transcolor = new ColorTransform();
my_transmatrix.scale(my_Init_fang, my_Init_fang);
my_transmatrix.translate(-my_ceng_2_map.width*my_Init_fang/2, -my_ceng_2_map.height*my_Init_fang/2);
my_transmatrix.rotate(my_jiaodu_In);
my_transmatrix.translate(my_ceng_2_map.width/2, my_ceng_2_map.height/2);
onEnterFrame = function () {
my_getIMG();
my_ceng_2_map.draw(_root);
var blur = new flash.filters.BlurFilter(2, 2, 1);
my_ceng_2_map.applyFilter(my_ceng_2_map, my_ceng_2_map.rectmy_jiaodu_In, new flash.geom.Point(0, 0), blur);
my_ceng_map.draw(my_ceng_2_map, my_transmatrix, transcolor, "normal", my_ceng_map.rectmy_jiaodu_In, true);
};
function my_getIMG() {
my_cengji++;
var part = my_mc2.attachMovie("stearss", "star_mc"+my_cengji, my_cengji);
part._x = my_mc2._xmouse;
part._y = my_mc2._ymouse;
part._xscale = part._yscale=35+75*Math.random();
var my_jiaodu_In = Math.PI*2*Math.random();
part._rotation = my_jiaodu_In*180/Math.PI;
part.vx = my_Init_Speed*Math.cos(my_jiaodu_In);
part.vy = my_Init_Speed*Math.sin(my_jiaodu_In);
part.onEnterFrame = my_begin_bmap;
}
function my_begin_bmap() {
this._x += this.vx *= my_chushiSpeed;
this._y += this.vy *= my_chushiSpeed;
this._xscale = this._yscale *= my_ifxuandu;
if (this._xscale<10) {
this.removeMovieClip();
}
}
作者主页:
http://www.taoshaw.com