Flash AS3.0教程:Main类打造发散效果
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-07
|
效果演示:鼠标点击观看效果
1、新建Flash文档,550*400,其它默认。
2、创建影片剪辑,选椭圆工具,笔触无,填充色放射渐变,画一个椭圆(形状自定,我相你会比我画得更好),右键库中设置链接,类名Ball。
3、返回场景1,第一层建背景(随意),新建as图层,在as图层第一帧输入代码:
- //小球的初始位置
- [code]//小球的初始位置
- var ballx:Number = 275;
- var bally:Number = 400;
- //小球运动速度
- var speed:Number = 5;
- stage.addEventListener(MouseEvent.CLICK,shoot);
- function shoot(e:MouseEvent):void
- {
- for(var i:int = 1;i<9;i++)
- {
- //从库中创建小球
- var ball:Ball = new Ball();
- //初始化小球位置
- ball.x = ballx;
- ball.y = bally;
- //根据三角函数计算小球的速度
- ball.spdx = cosD(i*-20)*speed;
- ball.spdy = sinD(i*-20)*speed;
- //注册enterFrame事件
- ball.addEventListener(Event.ENTER_FRAME,ballMove);
- e.target.addChild(ball);
- }
- }
- function ballMove(e:Event):void
- {
- //获取小球的引用
- var obj:MovieClip = e.target;
- //设置小球的坐标,实现运动
- obj.x += obj.spdx
- obj.y += obj.spdy
- if(obj.y<0||obj.x<0||obj.x>550||obj.y>400)
- {
- //移除enterFrame事件
- obj.removeEventListener(Event.ENTER_FRAME,ballMove)
- //从显示列表删除
- stage.removeChild(obj)
- }
- }
- //角度转换为弧度
- function angleToRadian(angle:Number):Number
- {
- return angle*(Math.PI/180);
- }
-
- function sinD(angle:Number):Number
- {
- return Math.sin(angleToRadian(angle));
- }
- function cosD(angle:Number):Number
- {
- return Math.cos(angleToRadian(angle));
- }
-
- 保存,按Ctrl+Enter测试,有问题回帖。
关键词: |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn
为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
|