这就是我通常这样做的方式.给定一个在矩形之外的点,这将在4个案例中的3个中进行较少的测试.有时只进行一次测试.
if(point.x < rect.x) return false;
if(point.y < rect.y) return false;
if(point.x >= rect.x + rect.width) return false;
if(point.y >= rect.y + rect.height) return false;
return true;
Run Code Online (Sandbox Code Playgroud)
您使用哪一个应取决于您是否预期会发生更多碰撞或更多未命中.
| 归档时间: |
|
| 查看次数: |
2824 次 |
| 最近记录: |