有一个网格,原点为(0,0),现在有n个矩形,随机分布在网格上,求覆盖所有矩形的最小矩形
解题思路
1. 求出n个矩形中的最小起始点
2. 求出n个矩形中最大的x、y的结束点
代码实现
const rectangleSize = (ary) => {
let minX = 0,minY = 0, maxX = 0, maxY = 0
ary.forEach(item => {
if (minX > item.x) minX = item.x;
if (minY > item.y) minX = item.y;
if (maxX < item.x + item.width) maxX = item.x + item.width;
if (minY < item.y + item.height) maxY = item.y + item.height;
})
retrun { x: minX, y: minY, width: maxX - minX, height: maxY - minY }
}