1
我有兩個相交的交叉點。它們具有相同的尺寸,唯一的區別是其中一個比另一個更低。我知道有一種方法可以得到它們的交點,但這不是我想要的。我實際上想要從位於交叉點之外的區域獲得新的矩形。Cocoa NSRect一個交點的外部
下部視圖的頂部與頂部視圖的底部相交。新的協議不應該有那個區域。我基本上想要一個與底部視圖具有相同原點和寬度的矩形,但沒有與頂部矩形相交的部分。
感謝您的幫助。
我有兩個相交的交叉點。它們具有相同的尺寸,唯一的區別是其中一個比另一個更低。我知道有一種方法可以得到它們的交點,但這不是我想要的。我實際上想要從位於交叉點之外的區域獲得新的矩形。Cocoa NSRect一個交點的外部
下部視圖的頂部與頂部視圖的底部相交。新的協議不應該有那個區域。我基本上想要一個與底部視圖具有相同原點和寬度的矩形,但沒有與頂部矩形相交的部分。
感謝您的幫助。
CGRect intersectRect = CGRectIntersection(highestRect, lowestRect);
CGRect theRectYouWant = CGRectMake(0, 0, 0, 0);
if(!CGRectIsNull(intersectRect)) {
theRectYouWant =
CGRectMake(lowestRect.origin.x,
intersectRect.origin.y + intersectRect.size.height,
lowestRect.size.width,
lowestRect.size.height - intersectRect.size.height);
}
有更多,Elbimio上this頁面看看;)
使用簡單的算術和計算呢? –
這就是我第一次想到的。我只是想知道可可是否提供了一個更好的方法 – Elbimio