2d物理引擎02
只是画出一个圆好像没什么用.....
所以我需要它动起来
犹记得s=vt,然后单位时间为1
那么让他动起来只需
setInterval(function(){
e.x+=e.Vx
e.y+=e.Vy
画出来()
},30)
画出来就是上一篇中的那个画圆的代码放进一个函数中就可以啦
动起来了....
可能在画之前还需要清空一下画板
function 画出来(){
cav.width=cav.width //可以清空画板,百度到的
ctx.fillStyle=e.color
ctx.arc(e.x,e.y,e.r,0,2*Math.PI)
ctx.fill()
}
但他跑掉了,我需要一个不让他跑掉的办法,碰撞!反弹!
怎么碰撞?碰到边缘不就是碰撞了吗
怎么反弹?把速度置反不就行了吗
好容易的样子
if(e.y-e.r<0){e.Vy*=-1}
if(e.y+e.r>H){e.Vy*=-1}
if(e.x-e.r<0){e.Vx*=-1}
if(e.x+e.r>W){e.Vx*=-1}
http://www.shenzilong.cn/