晴明的博客园 GitHub      CodePen      CodeWars     

[canvas] 角度反弹

假设有个斜平面,物体以一定的速度朝着斜面运动,如何取得反弹速度。

所要做的所有事情就是把整个系统包括物体,包括平面全部旋转的平面,
做完反弹处理后,再旋转回去。
这就意味着,需要旋转斜面,旋转物体的坐标,并且还要旋转物体的速度。

反弹后的速度

把整个系统旋转回去,也就是还原整个系统到初始位置

完整过程


newX = x*cos - y*sin;
newY = y*cos + x*sin;

//旋转回去
newX = x*cos + y*sin;
newY = y*cos - x*sin;

posted @ 2016-12-29 17:10  晴明桑  阅读(450)  评论(0编辑  收藏  举报