Javascript,我如何检查两个伪矩形是否碰撞


假设我有两个表:rect1和rect2。每一个都遵循x、y、宽度和高度的格式。

对于x,数字越大,向右越远。对于y,数字越大越向下。

var rect1 = [20,40,80,60];
var rect2 = [10,30,67,10];

我该如何检查这些是否碰撞?我知道这与数学有关,我现在只是思考有问题。

它应该是类似于的东西

var rect1 = [20, 40, 80, 60];
var rect2 = [10, 30, 67, 10];
function checkCollision(rect1, rect2) {
var x1 = rect1[0];
var y1 = rect1[1];
var w1 = rect1[2];
var h1 = rect1[3];
var x2 = rect2[0];
var y2 = rect2[1];
var w2 = rect2[2];
var h2 = rect2[3];
if (x1 < x2 + w2 && x1 + w1 > x2 && y1 < y2 + h2 && y1 + h1 > y2) {
return true;
} else {
return false;
}
}
console.log(checkCollision(rect1, rect2));

最新更新