查找要填充区域的矩形的大小

Find size of rectangles to fill area

本文关键字:区域 填充 填充区 查找      更新时间:2023-10-16

我遇到了麻烦,需要你的帮助:

我正在开发一个程序,该程序以平铺模式(又名视频墙,c列和r行(显示n视频。n是任意的,视频的大小相同(W x H(,我们有W / H比例,墙的大小是固定的,当n发生变化时,我如何获得最佳的crWH集?最佳集合定义为:WH是最大值,视频填充墙的最大面积。

我已经看了包装问题,但仍然无法解决上面的问题,有人可以帮助我吗?谢谢!

据我了解,您想在墙上放置n具有固定C=W/H比的矩形,并具有给定的WidthHeight

设矩形高度为 h(尚未知(,宽度为 w = C * h

每行网格都包含

nr =  Floor(Width / (C * h))   // rounding down

每列包含

nc = Floor(Height / h)

写不等式

n <= nc * nr
n <=  Floor(Width / (C * h)) * Floor(Height / h)

并求解(求最大可能的h值(未知 h

对于参数的实际值h可能会发现获得初始近似值:

h0 = Ceil(Sqrt(Width * Height / (n * C)))

并递减 h 值,直到不等式变为真