将矩形(c struct
和4 int
s)划分为随机数的更小的矩形(返回列表struct
s)是什么算法?更好的是,如果较小矩形的最大和最小尺寸可以通过参数进行控制。将矩形划分为更小的网格的算法?
例如
+----------+ +-------+--+
| | | | |
| | | | |
| | --> |---+---+--| (good)
| | | | |
| | +---+ |
| | | | |
+----------+ +---+------+
较小的形状应该是4面,下面是不好:
+----------+ +-------+--+
| | | | |
| | | | |
| | --> |---+---+--| (not good)
| | | |
| | +---+ |
| | | | |
+----------+ +---+------+
谢谢!
附录:(矩形为白痴的讨论)
+----+--------+
| | |
| +---+----+
| | | | (rectangle-chase)
+----+---+ |
| | |
+--------+----+
对于如何构造较小的矩形有任何限制吗? – andand 2010-07-08 02:29:42
我不用C语言编写代码,但在我看来,递归地将矩形分成2个矩形可以完成这项工作。 – Mathias 2010-07-08 02:31:39
@and并且较小矩形的大小应受限于上限和下限参数,即不小于x轴中父矩形的百分比,不大于x轴中父矩形的百分比,不小于%的Y轴中的父矩形,不大于Y轴中父矩形的% – ohho 2010-07-08 03:20:17