此代碼找到兩個矩形的交集,但我無法完全理解它。當我嘗試映射在紙上,它甚至沒有一個矩形:此代碼如何找到矩形交叉點?
def rec_intersection(rect1, rect2)
x_min = [rect1[0][0], rect2[0][1]].max
x_max = [rect1[1][0], rect2[1][1]].min
y_min = [rect1[0][0], rect2[0][1]].max
y_max = [rect1[1][0], rect2[1][1]].min
return nil if ((x_max < x_min) || (y_max < y_min))
return [[x_min, y_min], [x_max, y_max]]
end
rec_intersection([[1, 1], [2, 2]],[[0, 0], [5, 5]])
上面的代碼返回[[1, 1], [2, 2]]
。有人可以解釋這個過程嗎?
自己不去了解,這是什麼問題? –
@SperanskyDanil呵呵不錯的一個:) –
代碼假設返回2個矩形的交點。 Rect1和rect2。我不明白它是如何流動的,所以我要求某人澄清。謝謝 – hken27