跟随鼠标变化的滤镜效果

作者:天啸浪子   类型:闪吧BBS   来源:闪吧

  本实例使用flash8制作和发布,请把你的ie浏览插件更新为flash8查看~
点击浏览该文件
点击浏览该文件

制作主要使用如下方法:
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();

由于滤镜的效果很多,只是使用这几个,也可以使用不同的滤镜效果~
 源码:
点击浏览该文件

   责任编辑:uufeng    时间:2006年1月1日