如题,求高手指教一个能够模拟N个球在一个平面滚动和碰撞的算法...

解决方案 »

  1.   

    +
    要考虑到碰撞移动的坐标top、left位置,和碰撞后移动的角度
      

  2.   

    只需要初始化的时候计算一次圆心就好了 
    之后都可以根据步长来计算圆心
    附动量守恒定律  1.碰撞是指物体间相互作用时间极短,而相互作用力很大的现象.
      在碰撞过程中,系统内物体相互作用的内力一般远大于外力,故碰撞中的动量守恒,按碰撞前后物体的动量是否在一条直线区分,有正碰和斜碰.中学物理一般只研究正碰.
      2.按碰撞过程中动能的损失情况区分,碰撞可分为二种:
      a.完全弹性碰撞:碰撞前后系统的总动能不变,对两个物体组成的系统的正碰情况满足:
      m1v1+m2v2=m1v1′+m2v2′
      1/2m1v12+1/2m2v22=1/2m1v1′2+1/2m2v2′2(动能守恒)
      两式联立可得:v1′=[(m1-m2) v1+2m2v2]/( m1+m2) 当V2=0时,v1′=(m1-m2)v1/(m1+m2)
      v2′=[(m2-m1) v2+2m1v1]/( m1+m2) 当V2=0时,v2′=2m1v1/(m1+m2)