找到曲线通过N点的贝塞尔控制点

jwi*_*n68 14 bezier curve curve-fitting points

考虑以下很好的解决方案,找到通过4个点的曲线的立方Bézier控制点:

如何在C#中找到开始,结束和2个交叉点的BezierSegment的控制点 - AKA Cubic Bezier 4点插值

我想知道,如果Bézier曲线通过N点有一个直接的延伸,那么N> 2并且可能N≤20?

use*_*870 15

这是一个非常古老的问题,但我将在这里留给那些将来有同样问题的人.

@divanov已经提到,当N> 4时,没有Bezier曲线通过N个任意点.

我认为OP正在询问如何计算控制点以连接多个贝塞尔曲线以产生看起来平滑的单条曲线.

这个pdf将向您展示如何计算控制点:http://www.math.ucla.edu/~baker/149.1.02w/handouts/dd_splines.pdf

我在Square的这篇文章http://corner.squareup.com/2012/07/smoother-signatures.html上发现了它们如何呈现通过鼠标绘制签名的所有采样点的平滑曲线.

  • 更新链接:https://developer.squareup.com/blog/smoother-signatures/ (2认同)

div*_*nov 2

一般来说,不存在通过 N 个任意点的贝塞尔曲线,其中 N > 4。应考虑曲线拟合以最小化计算的贝塞尔曲线与给定 N 个数据点之间的最小二乘误差。例如,此处对此进行了讨论。