我正在寻找一种算法来检测两个矩形是否相交(一个是任意角度,另一个只有垂直/水平线).
测试一个角落是否在另一个ALMOST中.如果矩形形成十字形状,则失败.
避免使用线条的斜率似乎是一个好主意,这需要垂直线条的特殊情况.
有人可以帮我理解碰撞检测在JS中是如何工作的吗?我不能使用jQuery或gameQuery - 已经使用原型 - 所以,我正在寻找一些非常简单的东西.不要求完整的解决方案,只需指出正确的方向.
让我们说:
<div id="ball"></div>
and
<div id="someobject0"></div>
Run Code Online (Sandbox Code Playgroud)
现在球正在移动(任何方向)."Someobject"(0-X)已经预先定义,其中有20-60个随机定位如下:
#someobject {position: absolute; top: RNDpx; left: RNDpx;}
Run Code Online (Sandbox Code Playgroud)
我可以创建一个带有"someobject(X)"位置的数组,并在"ball"移动时测试碰撞...类似于:
for(var c=0; c<objposArray.length; c++){
........ and code to check ball's current position vs all objects one by one....
}
Run Code Online (Sandbox Code Playgroud)
但我想这将是一个"noob"解决方案,它看起来很慢.有更好的吗?