这个是圆圈旋转的简单案例 var canvas=document.getElementById("canvas"); var cxt=canvas.getContext("2d"); function fil(){ a+=0.05; cxt.clearRect(0,0,canvas.width,canvas.height) cxt.fillStyle="red"; cxt.beginPath(); cxt.arc((Math.sin(a)+1)*
var canvas = document.getElementById("canvas"); var cxt = canvas.getContext("2d"); var centerX = canvas.width / 2; var centerY = canvas.height / 2; // var x=centerX,y=centerY,speedX=1,speedY=0,radius=10; function Ball(x, y, radius, spe
如图所示的效果,小球相互碰撞会相互弹开,这时要干的事就只有两件事了,一:用二次循环遍历小球是否互相碰撞,二:碰撞之后会弹向什么地方和弹出多少距离,第一件事我想学过二维数组循环的都没问题,第二件事也只是用上期次弹动讲到的三角函数来判断角度,因为是力是相互的,所以反弹的一方应该是负值,而且因为撞击力会抵消,所以应该在乘以系数之后再乘以0.5这样就是相互弹撞,为了让效果明显,可以让反弹系数变成0.5,这样在弹在墙上就会变缓慢,效果就会变得更好 讲了这么多还是老规矩,代码贴上 var canvas =