Canvas小游戏学习笔记——运动的方向问题

任意2d环境的方向运动,都可以分解为x,y方向的移动。物体运动单位距离,x,y分量各需要移动多少就是怎么确定运动方向的关键。如下图(w3c坐标系)

    从图中可知,

sinθ = vY / 1,

cosθ = vX / 1,

推广到360度也同样适用。

所以, x方向单位移动距离为cosθ,y方向为sinθ。再加上运动参数速度,在代码中可用如下js语句:

vx = Math.cos(angle * Math.PI / 180) * speed
xy = Math.sin(angle * Math.PI / 180) * speed

猜你喜欢

转载自my.oschina.net/AARONWB/blog/1803399
今日推荐