我有一些二维多边形,每个多边形都是一个顺时针坐标列表。这些多边形是simple的(即它们可能是凹多边形,但不会自相交),它们之间也不会重叠。
我需要将这些多边形细分为更小的多边形以适应尺寸约束。与原始多边形一样,这些小多边形应该是简单的(非自相交),约束条件是它们应该每个适合一个“单位正方形”内(为了简单起见,我可以假设为1x1)。
问题是,我需要尽可能有效地完成此操作,其中“有效”意味着产生的(小)多边形数量最少。计算时间并不重要。
是否有一些聪明的算法可以实现这一点?起初,我考虑递归地细分每个多边形(将其水平或垂直地分成两半,取决于哪个方向更大),这种方法可以工作,但我似乎无法获得非常优化的结果。有什么想法吗?
我需要将这些多边形细分为更小的多边形以适应尺寸约束。与原始多边形一样,这些小多边形应该是简单的(非自相交),约束条件是它们应该每个适合一个“单位正方形”内(为了简单起见,我可以假设为1x1)。
问题是,我需要尽可能有效地完成此操作,其中“有效”意味着产生的(小)多边形数量最少。计算时间并不重要。
是否有一些聪明的算法可以实现这一点?起初,我考虑递归地细分每个多边形(将其水平或垂直地分成两半,取决于哪个方向更大),这种方法可以工作,但我似乎无法获得非常优化的结果。有什么想法吗?