matplotlib 如何使用三次样条创建赛道?

gjmwrych  于 2023-10-24  发布在  其他
关注(0)|答案(1)|浏览(87)

我的问题是即时通讯使用三次样条,但我得到这个错误,试图图形的比赛电路
raise ValueError(“x must be strictly increasing sequence.”)ValueError:x must be strictly increasing sequence.
所以我的一个问题是,我怎么做,而不使用递增序列?
我希望创建我的比赛电路只使用三次样条,但我看到我不能这样做,只有2个数组的坐标(x,y)。

jtjikinw

jtjikinw1#

三次样条方法需要对样本的独立坐标进行排序,一种选择是将xy作为t的函数进行参数化,使得t严格递增。(想想t是在二维或三维中对任意光滑曲线进行时间参数化的)。只需创建一个新数组t = sorted array of the size of x that covers the range [0, 1],并获得两个插值,一个用于t, x,一个用于t, y
如果您准备好迎接挑战,请查看Bezier曲线的立方版本以获得更多灵感:https://en.wikipedia.org/wiki/B%C3%A9zier_curve

相关问题