在HTML画布上绘制一个自相交的多边形。

6
我正在寻找一种方法来绘制带有洞的自相交多边形,我使用的是HTML Canvas元素。给定5个点,我想要绘制下面的红色图形。请注意:我不想使用线段交点和添加更多点的方式来实现,我将使用的路径将会是曲线。此问题与这个问题本质上是相同的。
2个回答

3
在Canvas 2D中,你无法使用单条路径绘制第一个五角星 - 它使用的填充规则是“even-odd”,而Canvas使用“non-zero”环绕规则填充形状。
我认为你需要计算内部五边形角落的交点并分别填充它。为了实现你所示例的绘图,你可以填充五角星(不带描边线),填充内部五边形(同样不带描边线),然后绘制五边形轮廓线条而不填充。

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接