C#样条插值用于在点阵列之间插入键

时间:2015-05-25 06:55:43

标签: c# algorithm math interpolation spline

我需要插值函数来插值点:

var times = new List<double>();
var offsets = new List<double>();
..
..
..//I fill times and offsets arrays with some points
..
var newTime= splineInterpolate(cursorOffset, offsets.ToArray(), times.ToArray())

1 个答案:

答案 0 :(得分:1)

这取决于您想要的插值类型。如果您不希望插值函数通过控制点,则可以使用Bezier curve(您可以选择曲线的顺序)。

如果您希望曲线通过控制点,则一个受欢迎的选择是cubic Hermite spline。有很多类型的hermite splines,如cardinal和catmull-rom样条(C1和C2连续)。

如果您只是进行简单的Google搜索,那么您将在C#中提供数千个splines结果。