flash8中自带的滤镜class,今天学习了一下,大家一起分享!
//首先在舞台上新建一个mc,实例名mm,在第一桢加入以下代码
//导入dropshadowfilter类
import flash.filters.DropShadowFilter;
//定义个滤镜参数
var d_alpha=0.1;
var d_distance=20;
var d_angle=30;
var d_blurx=10;
var d_blury=10;
var d_inner=true;
var d_strength=1;
var d_color=0x000000;
//新建滤镜对象
var shade=new DropShadowFilter(d_distance,d_angle,d_color,d_alpha,d_blurx,d_blury, d_strength,d_inner);
//新建存储滤镜的数组,flash8里必须把滤镜放到数组里,否则无效,我试过的!
var filter:Array=new Array();
filter.push(shade);
//给mm原件加上滤镜
mm.filters=filter;
//这里是我编的一个小效果,可以根据鼠标的位置改变阴影的角度、透明度
onMouseMove=function(){
//删除上次滤镜,你可以把这句注释掉,看看是什么效果
filter.pop();
var dx=mm._x-_xmouse;
var dy=mm._y-_ymouse;
//计算鼠标和mm的距离
distance=Math.sqrt(dx*dx+dy*dy);
//计算角度
var alphe=50/distance
var angle=Math.atan2(dy,dx)*180/Math.PI;
var shade= new DropShadowFilter(distance,angle,d_color,alphe,d_blurx,d_blury);
filter.push(shade);
//重新给mm加上滤镜
mm.filters=filter;
}
|
[
本帖最后由 ladeng6666 于 2008-5-5 20:30 编辑 ]