我有一个由二维点列表组成的路径。我想把它们变成一个三角形的条带,以便渲染一条具有指定粗细的纹理线条(以及其他类似的东西)。因此,从本质上讲,2D点的列表需要成为指定多边形轮廓的顶点列表,如果进行渲染,多边形的轮廓将呈现该线。问题是处理角连接、斜接、封口等。生成的多边形需要在没有透支、干净连接等意义上是“完美的”,以便可以可行地挤出或以其他方式玩弄。
有没有什么简单的资源可以提供算法洞察力,代码或更多的信息来有效地做到这一点?
我绝对不想要一个完整的2D向量库(cairo、antigrain、OpenVG等)。有曲线,弧线,破折号和所有的铃声。我一直在挖掘OpenVG实现的多个源码树和其他东西,以找到一些见解,但这些都非常复杂。
我当然愿意自己编写代码,但有许多退化的情况(小段+粗宽+尖角)会造成各种连接问题。即使是一点帮助也能帮我省下几个小时来尝试处理所有这些问题。
编辑:这是一个退化的例子,如果你只是从一个顶点到另一个顶点,它会导致丑陋。红色是原始路径。橙色块是以指定宽度绘制的矩形,在每个线段上对齐并居中。
https://stackoverflow.com/questions/687173
复制相似问题