矩形碰撞公式,以前還做j2me時就用到的公式,爲了方便查找,這裏記一下

/**  
*  
* @param x1 第一個矩形的X 座標  
* @param y1 第一個矩形的Y 座標  
* @param w1 第一個矩形的寬  
* @param h1 第一個矩形的高  
* @param x2 第二個矩形的X 座標  
* @param y2 第二個矩形的Y 座標  
* @param w2 第二個矩形的寬  
* @param h2 第二個矩形的高  
* @return  
*/  
public boolean isCollsionWithRect(int x1, int y1, int w1, int h1, int x2, int  
y2, int w2, int h2) {  
//當矩形1 位於矩形2 的左側  
if (x1 >= x2 && x1 >= x2 + w2) {  
return false;  
//當矩形1 位於矩形2 的右側  
} else if (x1 <= x2 && x1 + w1 <= x2) {  
return false;  
//當矩形1 位於矩形2 的上方  
} else if (y1 >= y2 && y1 >= y2 + h2) {  
return false;  
//當矩形1 位於矩形2 的下方  
} else if (y1 <= y2 && y1 + h1 <= y2) {  
return false;  
}  
//所有不會發生碰撞都不滿足時,肯定就是碰撞了  
return true;  
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章