algorithm - 两个矩形重叠多少?

标签 algorithm math geometry bounding-box

我有两个矩形 a 和 b,它们的边平行于坐标系的轴。我将它们的坐标设为 x1,y1,x2,y2。

我试图确定,它们不仅重叠,而且重叠多少?我想弄清楚它们是否真的是同一个矩形,是否有一些回旋余地。那么他们的面积95%是一样的吗?

对计算重叠百分比有什么帮助吗?

最佳答案

计算交点的面积,也是一个矩形:

SI = Max(0, Min(XA2, XB2) - Max(XA1, XB1)) * Max(0, Min(YA2, YB2) - Max(YA1, YB1))

从那里你可以计算并集的面积:

SU = SA + SB - SI

而且可以考虑比例

SI / SU

(在完全重叠的情况下为 100%,降至 0%)。

关于algorithm - 两个矩形重叠多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9324339/

相关文章:

c++ - 用勾股方程画圆

algorithm - Delphi - 编程算法找到下一个点来绘制组件

javascript - 二分查找函数是正确的,但返回未定义

python - 在伽罗华域中生成反向元素

c# - 将向量舍入到一个圆内有问题吗?

MySql 通过几何/空间数据查找国家

algorithm - 进行合并排序时是否有必要将索引作为参数传递?

image - 发票/OCR : Detect two important points in invoice image

c - 求和中每个单独项的除法公式

math - 线与线段相交