`
26252426
  • 浏览: 5674 次
  • 性别: Icon_minigender_1
  • 来自: 衡阳
最近访客 更多访客>>
社区版块
存档分类
最新评论

多点弹性运动(动画编程深入)

阅读更多
上回讲到了弹性运动,其实我们已经可以做很多有趣好玩的东东了,比如弹力小球,就是小孩经常玩的哪种,小球上面连上一根橡皮筋,用力摔出去,碰到东西又弹回来。在这里我仅描述一下,具体实现让你们自己发挥去。今天我要讲的是多点弹性运动,以前的都是单一受力,就是只受到一种弹力,现在我要让他受三种弹力或者以上的弹力,并且可以控制各方向的弹力大小。

       大家如果觉得很好,就多多踩一下,留一下言!!!谢谢光顾!!

这里要用四个小球,前面的小球类已经经出,今天只给出多点弹性运动的文档类!!现在到这里,未完待续。。。。。

  下面给出文档类全部代码:Demo1.as

package  {
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.events.Event;

public class Demo1 extends Sprite {
  private var ball_arr:Array;
  private var ball_num:Number=4;
  private var spring:Number=0.00006;
  private var friction:Number=0.2;
 
  public function Demo1(){
    for(var i=0;i<ball_num;;i++){   

    var ball:Ball=new Ball(10);
    stage.addChild(ball);
    ball_arr.push(ball);
    ball.x=Math.random()*stage.stageWidth;
    ball.y=Math.random()*stage.stageHeight;
    ball.addEventListener(MouseEvent.MOUSE_DOWN,onMouse_Down);
   }
   stage.addEventListener(Event.ENTER_FRAME,onEnter_Frame);
   stage.addEventListener(MouseEvent.MOUSE_UP,onMouse_Up);
  }
  private function onMouse_Down(evt:MouseEvent){
   evt.target.startDrag();
  }
  private function onMouse_Up(evt:MouseEvent){
   for(var i=0;i<ball_arr.length;i++){
    ball_arr[i].stopDrag();
   }
   //你们的回复是我继续的动力!
  }
  private function onEnter_Frame(evt:Event){
   var ball:Ball=ball_arr[0] as Ball;
   for(var i=1;i<ball_arr.length;i++){
    var ballA:Ball=ball_arr[i] as Ball;
    spring_Move(ball,ballA);
   }
   ball.vx+=ball.ax;ball.vy+=ball.ay;
   ball.vx*=friction;ball.vy*=friction;
   ball.x+=ball.vx;ball.y+=ball.vy;
   this.graphics.clear();
   this.graphics.lineStyle(1);
   for(var i=1;i<ball_arr.length;i++){
    var ballB:Ball=ball_arr[i];
    this.graphics.moveTo(ball.x,ball.y);
    this.graphics.lineTo(ballB.x,ballB.y);
   }
  }
  private function spring_Move(ball0,ball1){
   var dy=ball1.y-ball0.y;
   var dx=ball1.x-ball0.x;
   ball0.ax+=dx*spring;
   ball0.ay+=dy*spring;
  }

}
//谢谢大家,希望各位能学到东西。
}



分享到:
评论

相关推荐

    图片弹性转动放大的图片效果.rar_falsh 图片放大 多点触控

    通过分析和学习这些代码,开发者可以更深入地理解如何在Flash中实现图片的弹性转动和多点触控放大功能,这对于提升互动设计技能非常有帮助。 总结来说,使用Flash和ActionScript实现图片弹性转动及多点触控放大功能...

    iOS_Animation_Test4

    这个教程的源代码库,"iOS_Animation_Test4-master",包含了多种动画效果的实现,帮助开发者深入理解并熟练掌握Swift中的动画编程。 Swift作为Apple的主力编程语言,提供了强大的API来创建各种复杂的视图动画。在...

    iOS实例开发源码——LearnCocos2D-LearnCocos2D-f9ea793.zip

    3. **Physics**:包含使用Box2D物理引擎创建的示例,如物体碰撞、弹性运动和重力效果。 4. **Tile Maps**:展示了如何加载和操作Tiled地图,包括行走路径、碰撞检测和地图对象的交互。 5. **Sound and Music**:...

    Android 3D 游戏开发教程.pdf

    5. **动画和物理模拟**:学习如何实现角色动画、碰撞检测以及简单的物理模拟,例如重力、弹性碰撞等。 6. **触摸事件处理**:Android游戏通常依赖触摸屏交互,你需要知道如何处理触摸事件,包括单击、滑动和多点...

    基于Springboot的漫画网站--论文.zip

    Java项目基于springboot的课程设计,包含源码+数据库+毕业论文

    Java毕业设计-SpringBoot+Vue的分布式架构网上商城(附源码、数据库、教程).zip

    Java 项目, Java 毕业设计,Java 课程设计,基于 SpringBoot 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:html、javascript、Vue 后台框架:SpringBoot 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven 2. 部署 如果部署有疑问的话,可以找我咨询 Java工具包下载地址: https://pan.quark.cn/s/eb24351ebac4 后台路径地址:localhost:8080/项目名称/admin/dist/index.html 前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入)

    GUI面板MATLAB漂浮物识别.zip

    GUI面板MATLAB漂浮物识别

    【工程项目】MATLAB道路桥梁裂缝检测[不同类型,GUI界面,Bp算法].zip

    【工程项目】MATLAB道路桥梁裂缝检测[不同类型,GUI界面,Bp算法]

    Delphi 12.3控件之高仿银豹手机APP 1.0.zip

    Delphi 12.3控件之高仿银豹手机APP 1.0.zip

    springboot高校食堂移动预约点餐系统.zip

    ava项目springboot基于springboot的课程设计,包含源码+数据库+毕业论文

    基于SSM+JSP的定西扶贫惠农推介系统+数据库(Java毕业设计,包括源码,教程).zip

    Java 项目, Java 毕业设计,Java 课程设计,基于 SpringBoot 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:jsp 后台框架:SSM 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven 2. 部署 如果部署有疑问的话,可以找我咨询 Java工具包下载地址: https://pan.quark.cn/s/eb24351ebac4

    GUI面板MATLAB指纹识别.zip

    GUI面板MATLAB指纹识别

    【工程项目】MATLAB的病虫害检测系统(SVM方法,GUI界面).zip

    【工程项目】MATLAB的病虫害检测系统(SVM方法,GUI界面)

    基于ssm+vue的药品商超管理系统(java毕业设计,包括源码,数据库,教程).zip

    Java 项目, Java 毕业设计,Java 课程设计,基于 SSM 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:vue/html5 后台框架:SSM 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven 2. 部署 如果部署有疑问的话,可以找我咨询 Java工具包下载地址: https://pan.quark.cn/s/eb24351ebac4

    Java毕业设计-SpringBoot+Vue的旅游管理系统(附源码,数据库).zip

    Java 项目, Java 毕业设计,Java 课程设计,基于 SpringBoot 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:html、javascript、Vue 后台框架:SpringBoot 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven 2. 部署 如果部署有疑问的话,可以找我咨询 Java工具包下载地址: https://pan.quark.cn/s/eb24351ebac4 后台路径地址:localhost:8080/项目名称/admin/dist/index.html 前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入)

    Java毕业设计-SpringBoot+Vue的基于SpringBoot的CSGO赛事管理系统(附源码、数据库、教程).zip

    Java 项目, Java 毕业设计,Java 课程设计,基于 SpringBoot 开发的,含有代码注释,新手也可看懂。毕业设计、期末大作业、课程设计、高分必看,下载下来,简单部署,就可以使用。 包含:项目源码、数据库脚本、软件工具等,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行! 1. 技术组成 前端:html、javascript、Vue 后台框架:SpringBoot 开发环境:idea 数据库:MySql(建议用 5.7 版本,8.0 有时候会有坑) 数据库工具:navicat 部署环境:Tomcat(建议用 7.x 或者 8.x 版本), maven 2. 部署 如果部署有疑问的话,可以找我咨询 Java工具包下载地址: https://pan.quark.cn/s/eb24351ebac4 后台路径地址:localhost:8080/项目名称/admin/dist/index.html 前台路径地址:localhost:8080/项目名称/front/index.html (无前台不需要输入)

    2023年计算机组成与维护教程题库及答案.pdf

    2023年计算机组成与维护教程题库及答案.pdf

    本文章是本人在学习初阶数据结构的随手笔记,不具有任何教学功能,仅供参考

    本文章是本人在学习初阶数据结构的随手笔记,不具有任何教学功能,仅供参考

    #深度学习环境配置#CUDA+CUDNN+pycharm

    #深度学习环境配置#CUDA+CUDNN+pycharm

    springboot-时间管理系统 LW PPT.zip

    ava项目springboot基于springboot的课程设计,包含源码+数据库+毕业论文

Global site tag (gtag.js) - Google Analytics