【问题标题】:How to draw variable-width UIBezierPath?如何绘制可变宽度的 UIBezierPath?
【发布时间】:2023-03-03 22:12:01
【问题描述】:

我想知道我应该如何绘制一个 uibezierpath,其中笔划宽度在弧的中心达到峰值。这是我的意思的一个例子:

我要么在绘图时遍历每个点,并相应地设置笔画宽度,要么有更简单的方法。谁能指出我正确的方向?

谢谢

【问题讨论】:

  • 你是怎么做到的?你能分享你的代码吗?

标签: iphone ios graphics quartz-graphics uibezierpath


【解决方案1】:

你可以只画两条没有描边的外部路径,将它们连接起来,然后填充它们之间的空间。

【讨论】:

    【解决方案2】:

    如果您有兴趣,可以尝试另一种方法:

    我最终通过创建一个循环来绘制几百条线段,并在绘制循环期间相应地更改线宽来实现这一点。

    为了调整线宽,我使用了以下函数:MAX_WIDTH * sinf(M_PI * (i/NUMBER_OF_SEGMENTS)

    据我所知,看起来不错,没有性能问题。效果特别好,因为我已经有了曲线上要使用的点列表。对于其他情况,我猜使用 sosborn 的方法会更好。

    【讨论】:

      猜你喜欢
      • 2011-09-20
      • 1970-01-01
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-04
      相关资源
      最近更新 更多