一点背景。我有一个使用三次样条进行一维轨迹的模拟。在这种情况下,三次样条将对象的位置、速度、加速度和加加速度指定为时间的函数。
如果你有:
- 位置、速度、加速度和时间的初始值和最终值
- 对最大和最小速度、加速度和加加速度的恒定值约束
然后有一个独特的样条。如果您不指定最终时间,而是想要最小时间轨迹,那么还有一个独特的样条曲线。
不过,实际上找到这些样条线可能是一件非常痛苦的事情。在指定时间的情况下,样条曲线最多由 7 个多项式组成,并且节点(多项式之间的过渡点)事先不知道。
这不是将样条拟合到一组数据的常见情况,它是根据边界条件和一些额外的约束创建样条。我读过人们使用类似安排并有类似需求的论文,但我从未找到任何处理生成此类样条曲线的库(甚至源代码)。我编写了一些处理大多数情况的代码,但它不是非常健壮或快速。我不太担心它会很快,但更强大会很棒。
有没有可以做到这一点的图书馆?开源代码,即使不是作为库构建?首选 C、C++、Java 或 Python,但如果它是开源的,其他语言仍可用作参考。