应用思考-教育技术论坛

标题: 使用Flash制作太阳、月亮和地球运动的课件 [打印本页]

作者: etthink    时间: 2011-11-11 13:12
标题: 使用Flash制作太阳、月亮和地球运动的课件
转载自flash课件网,有兴趣朋友可以参与QQ交流群:510280445
太阳、地球和月亮相互运动的课件:要求地球绕太阳公转,月亮绕地球转的动画,地球和月亮分别自转。
个人认为考虑到要使得太阳、地球和月亮三者大小要成比例,太阳最大,月亮最小。
如果月亮也要做出自转效果,我们将无法看清了,因此本课件中我只制作了地球的自转效果。
一、制作太阳和月亮我在百度上搜了一下,找到了一张背景色为黑色的太阳照片,将就着使用吧。导入到库中,并转换为影片剪辑,导出为Sun类(后面用),至于月亮就更简单了,新建影片剪辑,使用椭圆工具绘制一个圆形,设置颜色为灰白色就行了。
二、制作地球的自转效果1.新建图形元件,绘制圆形,设置填充色为放射状,周边为蓝色,中心为白色(颜色样本中有)。
2.新建图形元件,按照五大洲的形状绘制出地球的表面的陆地轮廓(演示地球自转用)。这个较难,需要耐心才行。
3.使用遮罩制作地球自转效果。
三、制作地球月亮公转效果。1.新建影片剪辑,拖动制作好的地球和月球到舞台中,分别放入不同的图层中。
2.给月球层添加引导层。使用椭圆工具绘制圆形,并将月球拖到圆形曲线上,将月球的中心点对准曲线。根据需要制作补间运动效果。
3.制作好后,导出为Earth类。
四、制作太阳、地球和月亮相互运动效果。这个运动效果,本人使用ActionScript3.0脚本实现了地球系统围绕太阳做运动的效果。最大化查看效果更好
  1. import flash.events.Event;
  2. fscommand("allowscale", "false")
  3. var angle:Number =- .03
  4. var cos:Number = Math.cos(angle);
  5. var sin:Number = Math.sin(angle);

  6. var earth:Earth=new Earth();
  7. var sun:Sun=new Sun();
  8. addChild(sun);
  9. addChild(earth);
  10. sun.x = 220
  11. sun.y = 180
  12. earth.x=50
  13. earth.y=50
  14. sun.scaleX=.6
  15. sun.scaleY=.6
  16. addEventListener(Event.ENTER_FRAME,onframe);
  17. function onframe(event:Event):void
  18. {
  19.   var x1:Number = earth.x-sun.x ;
  20.   var y1:Number = earth.y-sun.y;
  21.   var x2:Number = cos * x1 - sin * y1;
  22.   var y2:Number = cos * y1 + sin * x1;
  23.   earth.x = sun.x + x2;
  24.   earth.y = sun.y + y2;
  25. }
复制代码



(, 下载次数: 249)

查看课件效果:http://www.eportfolios.cn/swf/sunearth.swf
课件下载: (, 下载次数: 201)





该贴已经同步到 etthink的微博
作者: 四叶草宝贝    时间: 2011-11-20 20:15
老师啊,帮我改改这个Flash吧,实现不了按钮动画实现后回到初始位置。
作者: 东拼西筹    时间: 2011-11-20 23:16
四叶草宝贝 发表于 2011-11-20 20:15
老师啊,帮我改改这个Flash吧,实现不了按钮动画实现后回到初始位置。

一堆timer,只有addEventListener,没有removeEventListener,每次reset(),不就ok了




欢迎光临 应用思考-教育技术论坛 (http://etthink.com/) Powered by Discuz! X3.4