FlashAS实例进阶制作时钟实现代码_第1页
FlashAS实例进阶制作时钟实现代码_第2页
FlashAS实例进阶制作时钟实现代码_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基本思路 作3个指针MC,分别按不同的速度旋转,实现时钟效果。 若要拖拽效果,则要把 12个数字分别作成 MC。然后作鼠标跟随。 新知识点 Date类的方法的应用: 复制代码 代码如下: MY Date= new Date()/ 构造一个新的Date 对象 Date.getHours()/按照本地时间返回小时值。 Date.getMinutes()/按照本地时间返回分钟值。 Date.getSeconds()/按照本地时间返回秒数。 Date.getMilliseco nds()/按照本地时间返回毫秒值。 一种缓冲公式应用 实例说明 此时钟实例是由数字和指针共15个MC组成,并又是嵌套在 MC

2、 “biao ”中,各MC 的注册点一定要确定准确, 分别将MC “ biao ”放在主时间轴的 3个帧上,为各帧上的MC编写不同的脚本。 设一按钮用于各帧之间的跳转 编写动作脚本 在第1帧到第2帧的MC上输入: 复制代码 代码如下: onClipEvent (enterFrame) /以影片剪辑帧频不断触发的动作 s = new Date();/创健日期对象 Hours = s.getHours();/ 读取系统时间-时 if (12Hours) Hours = Hours-12; /把24小时制转换为 12小时制 this.b13._rotation = (Hours*30)+(s.get

3、Minutes()/2);/ 把时和分转换为旋转角度 this.b14._rotation = (6*s.getMinutes(); /把获取的系统时间分转换为旋转角度 this.b15._rotation = (6*s.getSeconds(); /把获取的系统时间秒转换为旋转角度 在第3帧的MC上输入: 复制代码 代码如下: onClipEvent (load) 变量初始化 for (i=1; i16; i+) thisb+i.xl =0; thisb+i.yl =0; on Cli pEvent (en terFrame) s = new Date(); Hours = s.getHou

4、rsO; if (12Hours) this.b13. rotation Hours = Hours-12; =(Hours*30)+(s.getMi nutes()/2); this.b14. rotation =(6*s.getMi nutes(); this.b15. rotation =(6*s.getSeco nds(); this.b1._x = _xmouse; this.b1._y = _ymouse+120; /让第一个 MC跟随鼠标移动 ,并要MC低于鼠标120个像 素。 for (i=2; i=15; i+) 在趋于 thisb+i.xl = (thisb+(i-1)._

5、x-thisb+i._x)/2+thisb+i.xl*0.3;/ 的过程中不断被赋新值 变量bi.xl 在趋于 thisb+i.yl = (thisb+(i-1)._y-thisb+i._y)/2+thisb+i.yl*0.3;/ 的过程中不断被赋新值 变量bi.yl thisb+i._x += thisb+i.xl;/MC “ bi ”的坐标x值 thisb+i._y += thisb+i.yl;/MC “ bi ”的坐标y值 在第1帧上输入: sto p(); 在第2帧上输入: biao.startDrag(true); 在第1帧到第2帧的按钮上输入: on (release) n ext

6、Frame(); 在第3 帧的按钮上输入: on (release) gotoA ndSto p(1); 要点分析 时针: this.b13._rotation = (Hours*30)+(s.getMi nutes()/2) 首先看(Hours*30),因为走一周12小时是360度,那每小时就是走 间的小时数乘于30就是指针指向的度数。,如3点就是3*30,指针在 30度,用本地时 90度位置,但这样 只能是按小时发生动作,要显示中间的指针变化还需加上 ,这个表达式是计 算的当前分钟乘于每分钟在一个小时刻度内走的度数( (s.getMi nu tes()/2) 0.5度),这两个表达式相加就是以小 时和分钟计算出的时针旋转度数。 缓冲公式: thisb+i.xl = (thisb+(i-1)._x-thisb+i._x)/2+thisb+i.xl*0.3; 为便于观看首先把数值具体化: b2.xl=( b1._x-b2._x)/2+b2.xl*0.3; 其中的 (b1._x-b2._x)/2,我们在导航条那课已经用过类似的方法,这里是取两个 MC坐标值的差的二 分之一,这个表达式的结果在不断的由大到小直至为0,其中的b2.xl*0.3,是有意增加的 偏差值,有叫抖动率的,也是由大到小变化最后到 0,这两个表

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论