对ruby中的矩形感到困惑吗

对ruby中的矩形感到困惑吗,ruby,rectangles,Ruby,Rectangles,这段代码获取两个矩形的坐标并找到它们的交点 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 <

这段代码获取两个矩形的坐标并找到它们的交点

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]])
def rec_交叉口(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
如果((x_max
我真的不明白。具体来说,我想知道更多关于坐标的确切含义(我知道它们是左下角和右上角的坐标),但有人能详细说明吗?它们与什么有关?矩形的大小?或者是位置?左下角坐标为[1,1]的矩形与左下角坐标为[0,0]的矩形有何不同


另外,我想知道为什么为了找到x_min,使用了max方法(反之亦然)。任何澄清都将不胜感激。

这是一条评论,我将在OP看到后删除。这是两个矩形的图表,其中
rect1
包含在
rect2


前面,我将
[1,1]
[2,2]
分别称为
rect1
的“左上角”和“右下角”,这应该是“左下角”和“右上角”

敬拜,矩形通常是通过给出两个相对角的坐标来指定的。在您的示例中,
rect1=[[1,1],[2,2]]
,因此
[1,1]
将是左上角的坐标,
[2,2]
将是右下角的坐标。因此,其他两个角位于
[1,2]
(右上角)和
[2,1]
(左下角)。因此,在第二个矩形中,与第一个矩形的左上角[1,1]相比,左上角的坐标为[0,0]……那么这说明了矩形的什么?它们的大小或位置不同?。。。因为他们都是顶尖的-lefts@HolyMoly二者都听起来你应该花点时间学习毕达哥拉斯或笛卡尔,谢谢!这太完美了!