是否有一种算法可以对重叠的 contors 进行三角测量

Is there an algorithm for triangulating contors that overlap

我正在尝试对一些矢量数据进行三角剖分,以便使用 opengl 将 SVG 图形渲染到屏幕上,对于具有不重叠的轮廓的数据,我可以对这些形状进行三角剖分并渲染这些形状,但在某些情况下,轮廓会重叠并且这是我遇到问题的地方。

我目前使用的是delaunay三角剖分算法,我使用的数据是真字体数据。作为参考,我正在查看的字符是 arial 字体的 (char)260。我附上一张来自 font forge 的图片,显示了形状。

我可以成功 "fill" 这个形状使用缠绕顺序,所以我可以在位图图像上显示这个字形,但我不想在这里这样做,我想渲染这个字形直接使用 opengl(这适用于非重叠字形)。

有谁知道可以满足重叠轮廓的三角剖分算法或可以去除重叠的算法?

您需要像 this one(开源)这样的多边形布尔库来执行所有字符形状之间的并集运算,然后对结果进行三角剖分。