Python 如何使用三次样条曲线创建一个赛道线路
问题描述
我的问题是,我正在使用三次样条曲线,但在尝试绘制一个赛道线路时遇到了以下错误:
raise ValueError(” x
必须是严格递增的序列。”) ValueError: x
必须是严格递增的序列。
那么,我的一个问题是,如何在不使用递增序列的情况下完成呢?
我原本希望只使用三次样条曲线来创建我的赛道线路,但我发现只使用两个坐标数组(x,y)是不可能的。是否有其他建议?
解决方案
三次样条曲线方法要求样本的独立坐标排序。一种方法是将 x
和 y
作为 t
的函数进行参数化,其中 t
是严格递增的。(想象一下,以 t
作为参数对2D或3D中的任意平滑曲线进行参数化)。只需创建一个新数组 t = x大小的已排序数组,覆盖范围为[0, 1]
,并获得两个插值器,一个用于 t, x
,另一个用于 t, y
。