Bezier 光滑贝塞尔曲线

Bezier 光滑贝塞尔曲线,bezier,smooth,curve,Bezier,Smooth,Curve,我想在iphone中平滑一些手绘线条。 我在中使用了以下代码 但是,我发现一些贝塞尔曲线是错误的,第二个控制点和终点是无效的。 以前有人有过同样的问题吗? 谢谢。贝塞尔曲线不是为穿过提供的顶点而设计的! 它们的设计目的是形成受控制点影响的平滑曲线 首先,您必须决定是否要在缺失点之间插值, 或者,如果要过滤非平滑数据: 过滤 你应该用一个小的平均窗口来观察“滑动平均”。(试试5-10像素)。 其工作原理如下:(有关详细说明,请查看wiki) 我在这里使用平均10点的窗口: 首先计算点0-9的平均

我想在iphone中平滑一些手绘线条。 我在中使用了以下代码

但是,我发现一些贝塞尔曲线是错误的,第二个控制点和终点是无效的。 以前有人有过同样的问题吗?
谢谢。

贝塞尔曲线不是为穿过提供的顶点而设计的! 它们的设计目的是形成受控制点影响的平滑曲线

首先,您必须决定是否要在缺失点之间插值, 或者,如果要过滤非平滑数据:

过滤

你应该用一个小的平均窗口来观察“滑动平均”。(试试5-10像素)。 其工作原理如下:(有关详细说明,请查看wiki)

我在这里使用平均10点的窗口:
首先计算点0-9的平均值,并将结果输出为结果点0
然后计算点1-10的平均值并输出,结果1
等等

插值 如果要使用平滑曲线在(缺少的)点之间插值,可以使用分段三次样条曲线:

通过3个顶点计算立方体多边形的系数。 首先通过以下步骤计算立方体多边形:
点[0]-点[2],但只能从点[0]到点[1]绘制输出。
然后继续一步:通过
点[1]-点[3],但仅从p1到p2绘制。 等等


您需要在wiki上搜索三次插值,以获得如何计算三次多边形(有时称为三次样条曲线)的详细说明。

您必须更具体一些。举个例子,看。