我想不出比这更优雅的解释了。所以我有一个长方形的容器和数量可变的物品,我想像这样均匀地填满容器
如果容器的长宽比1.5
并且我有6
项,那么列应该3
x x x
x x x
如果容器的长宽比
2.0
并且我有32
项,那么列应该8
x x x x x x x x
x x x x x x x x
x x x x x x x x
x x x x x x x x
如果碰巧比率
2.0
并且我有30
项,那么列应该仍然8
x x x x x x x x
x x x x x x x x
x x x x x x x x
x x x x x x
等等。我觉得这应该很简单,但我想不出一个简单的方法来做。输入为
items
、width
和height
,输出为columns
(行将自行填写)谢谢
最佳答案
我得到的公式是sqrt(项/纵横比)*纵横比。在场景3中,您可以将此结果进行舍入以获得所需的结果。
我怎么得到的:
'aspect ratio just seems to be scale of the number of rows; as such
columns = rows * aspect ratio
also
items = rows * columns
now subbing in / algebra
rows^2 * aspect ratio = items
rows = sqrt(items/aspect ration)
columns = sqrt(items/ aspect ratio) * aspect ratio'
关于html - 将物品整齐地包装到矩形盒子中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45538722/