3

我正在尝试绘制一条与自身重叠的描边路径,但这样做的方式是您可以分辨出路径的哪一部分在另一部分之上。

我遇到的一个问题是,如果一条路径与自身重叠,它将连接到自身。所以我试图通过绘制两条单独的路径来解决这个问题。

两条独立的路径

这很好用,除了第二行的笔画在视觉上将它与第一行断开了。

分隔线

有没有办法比尝试重绘将两条路径一分为二的笔划更干净?

编辑:澄清一下,我实际上在做的是画一条更粗的黑线,然后在上面画一条彩色线以获得笔触效果。

4

1 回答 1

1

正如 Jesse 上面猜测的那样,解决方案是使用kCGLineCapButtlineCapStyle 作为我的路径段的“笔划”部分。

事实证明,这样做非常简单,可以创建我想要的效果。如果您动态生成路径,最大的烦恼是确定绘制路径段的顺序。

您还必须注意任何两个控制点与它们共享的路径点共线(具有相同的斜率),否则对接端将不会完全对齐。但是,如果您想要流畅的连接,无论如何您都应该这样做。

  1. 用对接帽样式描边你的底部路径段。这将是路径段的“笔触”(黑色)。第一条路径描边为带有对接端的边框

  2. 用圆帽样式和稍细的宽度再次描边你的底部路径段。这将是您细分的“填充”(颜色)。描边填充圆端的第一条路径

  3. 为了更好地说明我的曲线,我添加了控制点。具有控制点的第一条路径

  4. 根据需要重复...带有控制点的第二条路径 带控制点的第三条路径

  5. 删除控制点的最终结果。在为“填充”(黑色)路径段描边后,我还在完整路径的起点和终点处绘制了“描边”(黑色)宽度的直径圆圈,以使末端看起来像圆形对接帽样式.全曲线

于 2013-10-17T00:06:35.720 回答