直接上**:
package companychukongkeji;
// 兩個矩形都是平行於x,y軸,判斷是否相交。兩種方法,都需要檢查特殊情況。
public class rectangleintersect
if ((a.top < b.bottom && a.right < b.left) || (a.bottom > b.top && a.left > b.right))
return true;
} // 方法二:若兩矩形的中心滿足一定的條件,則必定相交
boolean isrectintersect2(rectangle a, rectangle b)
if ((math.abs(acenterx - bcenterx) < radiusx) || (math.abs(acentery - bcentery) < radiusy))
return false;
} // 若兩矩形相交,相交區域必定有:top = min(top),bottom = max(bottom),right =
// min(right),left = max(left)
float intersectarea(rectangle a, rectangle b)
return 0;
} public static void main(string args) else
if (r.isrectintersect2(ra, rb)) else
system.out.println("相交區域面積: " + r.intersectarea(ra, rb)); }}
class rectangle
this.left = left;
this.right = right;
this.top = top;
this.bottom = bottom;
}}
兩個矩形相交問題 判斷是否相交
最近,面試遇到一道演算法題目如下 兩個矩形,判斷是否相交 如果相交面積大於零,輸出相交部分的左上角以及右下角座標點,否則,輸出 1,1 1,1 沒有給出完善的解決方案,在面試官的細心引導下,解決了兩個線段相交輸出交點的問題。因此下來在網上搜了相關的問題。1 下面是 判斷兩個矩形是否相交的方法 下圖是...
兩個矩形是否相交
假定矩形是用一對點表達的 minx,miny maxx,maxy 那麼兩個矩形rect1,rect2 相交的結果一定是個矩形,構成這個相交矩形rect的點對座標是 minx max minx1,minx2 miny max miny1,miny2 maxx min maxx1,maxx2 maxy ...
判斷兩個矩形相交以及求出相交的區域
問題 給定兩個矩形a和b,矩形a的左上角座標為 xa1,ya1 右下角座標為 xa2,ya2 矩形b的左上角座標為 xb1,yb1 右下角 座標為 xb2,yb2 1 設計乙個演算法,確定兩個矩形是否相交 即有重疊區域 2 如果兩個矩形相交,設計乙個演算法,求出相交的區域矩形 1 對於這個問題,一般...