一個簡單的2D isinbox功能,可以是:
bool IsInBox(int x1, int y1, int width1, int height1, int x2, int y2, int width2, int height2) {
int right1 = x1 + width1;
int right2 = x2 + width2;
int bottom1 = y1 + height1;
int bottom2 = y2 + height2;
// Check if top-left point is in box
if (x2 >= x1 && x2 <= right1 && y2 >= y2 && y2 <= bottom1) return true;
// Check if bottom-right point is in box
if (right2 >= x1 && right2 <= right1 && bottom2 >= y2 && bottom2 <= bottom1) return true;
return false;
}
不知道,如果作品雖然XD
或者你可以使用Rect.Intersect()
這可以工作,但每次我想添加一個新的圖像,我必須檢查所有以前的圖像。我希望有一種方法可以做到這一點,在我放下某個圖像後,我可以標記該區域。然後下一次我想放下一張圖像時,我可以檢查它是否與標記區域相撞。 – Alexis 2012-01-29 21:14:40