如何渲染填充路径?

时间:2014-07-30 23:38:00

标签: algorithm vector-graphics

矢量图形中用于渲染填充路径的标准算法是什么?

我不仅对渲染笔画的过程感兴趣,我还想知道如何填充形状 - 如何确定给定点是在路径内部还是外部(我相信甚至指定什么规则内外均值不是一件简单的事情。)

1 个答案:

答案 0 :(得分:2)

  1. 查找轮廓(周边为多边形)

    这我觉得你已经有了

  2. 三角测量(或切割成凸多边形)

    有许多方法,如:

    • clip ear
    • 德洛奈

    请参阅Wiki Polygon triangulation

  3. 填充凸三角形/多边形

    这很容易使用

  4. <强>式

    这个东西比较复杂,听起来就像第一次听到的那样。为:

    1. 轮廓宽度 pen,stroke

      通过将轮廓移出或移出来将轮廓转换为多边形。有关详细信息,请参阅this

    2. 大纲样式 pen,stroke

      完整,点划线,点点,...有关详细信息,请参阅this

    3. 填充样式 brush

      像所有人中最复杂的孵化一样。它涉及重多边形调整类似但更难以轮廓宽度。有些样式更简单,有些极端复杂,例如等距线填充简单loop + intersection + inside polygon test will。要在里面测试多边形,可以使用hit test