写了一个模拟小球弹性碰撞的Demo,先贴上来。
场景说明:
随机生成N个小球,随机初始速度,初始方向,质量,大小,颜色。
每个小球都看做是质点。球和球,球和壁的碰撞都是弹性的(即碰撞后X,Y轴方向变反,大小不变),动能守恒。
左击鼠标,停止运动,用箭头标识当前的运动方向。再单击则开始运动。
右击鼠标,重新初始化场景重新开始。
程序由: 一个Ball类,Game类,和MainForm组成
MainForm提供场景的"画布", Game控制小球(Ball类)的运动。
Form代码:
Game代码:
Ball代码: