我想编制一个工具,可以将对象放在一个带有最小浪费的矩形上,这个问题也被称为切割问题。 所以我环顾四周寻找一些算法,我发现有一些用于矩形,但对于n边多边形没有那么多。
我的第一种方法是获取多边形的边界框,然后运行普通的矩形算法。之后你慢慢尝试增加边数,但仍然只有等距线(只有垂直和水平),以近似多边形。
我想知道是否有任何好的算法可以实现这样的东西,但比创建我自己的东西更常见。
我提出的另一种方式可能是二维背包和一些排序启发式的东西,它们排序最合适的多边形并尝试将它们放在矩形上。
但是我想出的所有特殊多边形(例如正方形或普通矩形)都有一些很好的检测,但不适用于常见的多边形。