发新话题
打印

[分享] 简单制作图形变换效果

简单制作图形变换效果

写个简单的教程,一起学习下吧...   
0 t8 ^0 a. f, D. m新建一个空白的FLASH文档,把背景色改为黑色。图1:
; H! ?8 ]8 @% x" Z, |2 _
0 z. u- M4 G1 a1 e& ^, t按Ctrl+F8新建一个景片剪辑。图2:4 s4 C4 k2 Z) X- `/ t2 J
% n1 O: n0 W- ~" T/ E
在景片剪辑中,选择文本工具,在舞台上打出想要打的字,然后在第50帧插入帧。图3:
# E3 @1 Y& E% c8 p4 s4 P+ g, w
' U2 b& ~9 R0 ?3 Y7 }- g新建图层2,把图把2拖到图层1下边,然后在图层2第1帧用矩形工具画一个863*122的矩形,填充上渐变色。图4:9 f) D3 ?+ C8 V/ f
; @2 ]7 A/ F6 m( K6 [+ X
第50帧插入关键帧,把矩形移动到左边的位置(如图)。图5:: N) [* m  ?* }0 H6 N' {8 S) `: t

, h8 e9 ^, F0 Z- Y) K' k/ H- ?然后在1到50帧间任意一帧创建形状补间动画。图6:
% S9 ?7 _7 W4 u$ V+ ~7 b1 f% G; E5 ~9 b, Q9 F/ J
最后在图层1右击选择遮罩层。图7:
- d' x4 J% H# [) q+ U, R$ l. i( X
下面,回到场景中,按Ctrl+L打开库,从中把刚做好的影片剪辑拖到场景中,然后点下场景中的影片剪辑,按F9打开动作面板,输入下面的代码:
复制内容到剪贴板
代码:
onClipEvent (mouseMove) { //mouseMove指鼠标移动  

   x = _root._xmouse; //返回鼠标的X坐标值  

   y = _root._ymouse; //返回鼠标的Y坐标值  

   if (x>=this._x) {  

   rot = Math.atan((y-this._y)/(x-this._x))*180/Math.PI;  

   } else {  

   rot = Math.atan((y-this._y)/(x-this._x))*180/Math.PI+180;  

   }  

   //Math.atan是用来计算正切值 //Math.PI表示圆周率 //计算得出,rot的值是一个角度值,也就是鼠标移动前那个点和鼠标移动后那条线的角度!最终实现的效果就是场景中的影片的角度方向跟随鼠标的方向移动  

   setProperty("", _rotation, rot); //元件的新的数值  

   xscal = Math.sqrt((x-this._x)*(x-this._x)+(y-this._y)*(y-this._y));  

   this._xscale = xscal; //Math.sqrt用来取平方根,这个是两点之间线的长度,把鼠标与场景中的影片的距离作为影片在横坐标方向的缩放值,就是说鼠标离影片越远,影片剪辑在横坐标方向上放大程度越大  

   updateAfterEvent(); //影片剪辑执行完成后,更新显示内容,也就是刷新的意思。  

  }
图8:
/ j; A- y# n; b# y( @6 x; p. }' {4 P' e
好了,完成,测试下吧~
赠人玫瑰,手有余香。

TOP

发新话题