我可能会遗漏一些非常基本的东西,但是有可能在两个点(位置和切线给定)之间计算一个三次Hermite样条曲线,其中二阶导数在端点处等于0(因此它与一条线具有C2连续性)分割)?或者,我是否需要更高程度的样条来完成此操作?经过几个小时的研究,我似乎得到了复杂的答案。
我没有花键和样条拟合的经验,所以即使有可能,我也不知道如何以算术或编程方式完成此操作。我也不知道我是否提供了足够的信息,所以请随时请求我需要提供的任何信息。任何帮助或额外资源将不胜感激。谢谢!
编辑:经过一些研究后,似乎我要求两个点之间的三次样条曲线可以放宽(两个端点处的二阶导数= 0)和钳位(一阶导数在两个端点处明确定义)。这可能吗?
答案 0 :(得分:0)
Paul Bourke在interpolation methods上有一个包含hermite插值的页面。列出的代码适用于1D,但它应该让您了解基本结构。用2D(或3D)类型替换double
是可行的,但Java缺少运算符重载需要稍微改动(用函数调用替换运算符)。