一个多边形平铺另一个多边形

Tile one polygon by anothers

给定的是由一组点 (X, Y) 定义的多边形,其中包含自由点和另一个多边形。

我需要用另一个来平铺初始多边形,这样它们就不会交叉和接触内部初始多边形,并且所有自由点都应该在它们内部。接收到的多边形之间也应该有距离,它在给定值之间得出结论。生成的多边形不应超过六个角。

是否有任何已知的算法来计算这个?

所需结果的实际示例:

积分:

有很多方法可以做到这一点。这是一个:

使用任何三角剖分算法对多边形进行三角剖分(考虑到洞)。重复选择相邻的三角形以形成最多具有六个外部顶点的组。缩小组并断言自由点不落在组之外。