使用 JavaScript 将矩形打包成多边形

Zeb*_*Lab 6 javascript polygon packing rectangles

我需要将 n 个不同大小的矩形 (n<10) 打包成一个简单的多边形。我知道两种可能的解决方案:

  • 将矩形装箱成矩形。那么问题就变成了在多边形中找到一个相当大的矩形。它不需要是最大的矩形,但它应该足够大,可以很好地近似多边形以填充这些小矩形。有什么算法可以做到这一点吗?

  • 使用约束求解器。我知道的唯一 JavaScript 约束求解器是Cassowary。然而,它是一个线性的,在我看来,在一个简单的多边形内约束一个点不是一个线性约束。

有任何想法吗?