【flash8新特性实例教材】跟随鼠标变化的滤镜效果
本实例使用flash8制作和发布,请把你的ie浏览插件更新为flash8查看~
[upload=swf]UploadFile/2005-12/20051231183349122.sw
制作主要使用如下方法:
1、制作一个MC,拖入到舞台上,修改实例名为myMC
2、添加下列代码:
import flash.filters.*;//载入滤镜类
// 定义初始斜角滤镜的偏移距离 var maxbeveldistance:Number = 5;
// 创建一个斜角滤镜 var bevel:BevelFilter = new BevelFilter(); // 定义初始斜角滤镜的强度 bevel.strength = .6;
// 创建一个投影滤镜 var dropshadow:DropShadowFilter = new DropShadowFilter(); //投影滤镜初始化 dropshadow.color = 0x000000; dropshadow.alpha = .75; dropshadow.blurX = 10; dropshadow.blurY = 10;
// 跟随鼠标变化更新滤镜数据 onMouseMove = function(){ // 计算当前鼠标与mc之间的距离差 var dx = _xmouse - myMC._x; var dy = _ymouse - myMC._y; //计算距离 var distance = Math.sqrt(dx*dx + dy*dy); // 计算偏移角 var angle = Math.atan2(dy, dx); // 应用斜角发光的偏移距离和角度 bevel.distance = Math.min(maxbeveldistance, distance/50); bevel.angle = 180 + angle * 180/Math.PI; // convert and rotate 180 degress // 应用投影偏移距离和角度 dropshadow.distance = distance/20; dropshadow.angle = 180 + angle * 180/Math.PI; // convert and rotate 180 degress // 在mc上增加滤镜~ myMC.filters = [bevel, dropshadow]; }
//初始化 onMouseMove();
由于滤镜的效果很多,只是使用这几个,也可以使用不同的滤镜效果~
源码:
[upload=fla]viewFile.asp?ID=293806[/upload]
|