文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络媒体动画FlashFlash AS制作小球自由运动和碰撞检测的动画
精品推荐
特别推荐
·loading 的详细制作
·用Flash制作个性化的QQ表情
·FLASH基础的一些心得体会
·推荐:不间断滚动显示图片的代码
·全面升级您的Flash播放器
·由浅入深学习Flash制作高射炮游戏
·由浅入深学习Flash制作高射炮游戏(续)
·遮照及文字遮照的几个概念和事例
热点TOP10
·银行利率表
·Flash MX 2004界面掠影
·Flash 图片轮换效果
·Flash AS3:动态文本滚动条
·Flash教程:用Flash分析制作动态日历效果
·Flash动画基础视频教程(22):形变动画类型
·Flash视频教程实例:形状的重叠
·Flash将进化为应用软件开发工具

Flash AS制作小球自由运动和碰撞检测的动画

日期:2007年9月23日 作者: 查看:[大字体 中字体 小字体]

 collisionision_angle = Math.atan2(dy, dx);
 magnitude_1 = Math.sqrt(ball.xspeed*ball.xspeed+ball.yspeed*ball.yspeed);
 magnitude_2 = Math.sqrt(ball2.xspeed*ball2.xspeed+ball2.yspeed*ball2.yspeed);
 direction_1 = Math.atan2(ball.yspeed, ball.xspeed);
 direction_2 = Math.atan2(ball2.yspeed, ball2.xspeed);
 new_xspeed_1 = magnitude_1*Math.cos(direction_1-collisionision_angle);
 new_yspeed_1 = magnitude_1*Math.sin(direction_1-collisionision_angle);
 new_xspeed_2 = magnitude_2*Math.cos(direction_2-collisionision_angle);
 new_yspeed_2 = magnitude_2*Math.sin(direction_2-collisionision_angle);
 final_xspeed_1 = ((ball.mass-ball2.mass)*new_xspeed_1+(ball2.mass+ball2.mass)*new_xspeed_2)/(ball.mass+ball2.mass);
 final_xspeed_2 = ((ball.mass+ball.mass)*new_xspeed_1+(ball2.mass-ball.mass)*new_xspeed_2)/(ball.mass+ball2.mass);
 final_yspeed_1 = new_yspeed_1;
 final_yspeed_2 = new_yspeed_2;
 ball.xspeed = Math.cos(collisionision_angle)*final_xspeed_1+Math.cos(collisionision_angle+Math.PI/2)*final_yspeed_1;
 ball.yspeed = Math.sin(collisionision_angle)*final_xspeed_1+Math.sin(collisionision_angle+Math.PI/2)*final_yspeed_1;
 ball2.xspeed = Math.cos(collisionision_angle)*final_xspeed_2+Math.cos(collisionision_angle+Math.PI/2)*final_yspeed_2;
 ball2.yspeed = Math.sin(collisionision_angle)*final_xspeed_2+Math.sin(collisionision_angle+Math.PI/2)*final_yspeed_2;
}
_root.onEnterFrame = function() {
 for (x=1; x<number_of_balls; x++) {
  for (y=x+1; y<=number_of_balls; y++) {
   distance_x = Math.abs(_root["ball_"+x]._x-_root["ball_"+y]._x);
   distance_y = Math.abs(_root["ball_"+x]._y-_root["ball_"+y]._y);
   distance = Math.sqrt(distance_x*distance_x+distance_y*distance_y);
   if (distance<=30 && (_root["ball_"+x].collision == 0 or _root["ball_"+y].collision == 0)) {

上一页 [1] [2] [3] [4] 下一页 



上一篇:黑客、红客、蓝客、飞客究竟是什么?

下一篇:Photoshop使普通照片变得具有视觉冲击效果
相关文章:
·Photoshop实例:制作超酷影片画面场景
·Photoshop制作一个逼真的垃圾篓(1)
·怎样制作网页?
·Photoshop模拟制作草地和天空效果图
·Flash MX 2004界面掠影
·Flash 图片轮换效果
·梦幻科技推出国内首款Flash转VCD/DVD工具
相关软件:
·暗黑破坏神 2:毁灭之王 1.10S极品属性装备制作器
·多种dos启动盘制作全攻略
·Flash MX 从入门到精通
·孙鑫VC++从入门到精通开发详解视频教程FLASH版
·实用局域网终极制作教程
·《最终幻想12》超清晰CG动画
·家常菜制作集锦(1)

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot