Flash8动态遮罩应用

2008-04-02 10:59:39来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  来自好友thinking的创意,需要使用可拖动的动态遮罩来模拟抹去灰尘的效果,但想让拖动的遮罩边缘更光滑,更自然一些,在flashmx2004本身实现上不太可能用直接的方法实现,兴许多用影片剪辑嵌套能够模拟出来,但用flash8是能够实现的.下面范例及代码:

  

  


  

//***copyrightbywebstudio.com.cn.authorbyegoldy.2006.2.7

  //导入flash8filters类

  importflash.filters.BlurFilter;

  //创建模糊对象

  varblur:BlurFilter=newBlurFilter(10,10,2);

  _root.createEmptyMovieClip(’square’,2);

  _root.pic.setMask(square);

  //应用模糊

  _root.square.filters=[blur];

  //应用cacheAsBitmap.这是关键.

  pic.cacheAsBitmap=true;

  onMouseMove=function(){

  square.drawCircle(_xmouse,_ymouse,30);

  updateAfterEvent();

  }

  //绘制圆

  MovieClip.prototype.drawCircle=function(x,y,r){

  this.moveTo(x r,y);

  this.beginFill(0x000088);

  this.curveTo(r x,0.4142*r y,0.7071*r x,0.7071*r y);

  this.curveTo(0.4142*r x,r y,x,r y);

  this.curveTo(-0.4142*r x,r y,-0.7071*r x,0.7071*r y);

  this.curveTo(-r x,0.4142*r y,-r x,y);

  this.curveTo(-r x,-0.4142*r y,-0.7071*r x,-0.7071*r y);

  this.curveTo(-0.4142*r x,-r y,x,-r y);

  this.curveTo(0.4142*r x,-r y,0.7071*r x,-0.7071*r y);

  this.curveTo(r x,-0.4142*r y,r x,y);

  this.endFill();

  };

  本例针对webstudio站上之前教程dynamic mask,进行了一些改写,也能够和flashmx2004的效果做一下对比,能够用他来制作类似抹去照片上的灰尘,玻璃幕墙上的水雾等,总之发挥起来就较多了.

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: Flash中白天和黑夜的制作

下一篇: 了解在Flash中的编程工作