为了学校作业,我需要使用 JavaScript 编写一个判断圆形是否碰撞的程序。
不需要图形展示。
我尝试过编写代码,但好像并不起作用。请问如何修复?
这是我编写的代码:
function collision (p1x, p1y, r1, p2x, p2y, r2) {
var a;
var x;
var y;
a = r1 + r2;
x = p1x - p2x;
y = p1y - p2y;
if (a > (x*x) + (y*y)) {
return true;
} else {
return false;
}
}
var collision = collision(5, 500, 10, 1000, 1500, 1500);
alert(collision);
return (a > (x*x) + (y*y));
,而不是使用if来返回true或false,因为这已经是条件了。或者更好的方法是将条件存储在一个名为var isCollision = (a > (x*x) + (y*y));
的变量中,然后return isCollision;
。这样做可以使代码更易读。同时,不要将变量名collision用于两个不同的事物。 - CaffGeek