主要内容

bspline

绘制 B 样条及其多项式段

说明

bspline(t) 绘制具有节点序列 t 的 B 样条,以及组成该 B 样条的多项式段。有关样条拟合的详细信息,请参阅关于 Curve Fitting Toolbox 中的样条

示例

bspline(t,window)window 指定的子图窗口中绘制具有节点序列 t 的 B 样条,以及组成该 B 样条的多项式段。

pp = bspline(t) 不绘制任何内容,返回 pp 型 B 样条。

示例

全部折叠

此示例说明如何使用 bspline 函数创建一个 4 阶 B 样条。

创建节点序列并绘制 B 样条

下图显示一个 4 阶 B 样条和组成该样条的四个三次多项式。

要在 MATLAB® 中复制此图窗,首先创建一个节点序列。节点序列必须为非递减序列。

t = [0 1.5 2.3 4 5];

由于您定义了五个节点,B 样条的阶数将为 4。

然后,使用 bspline 函数绘制具有节点序列 t 的 B 样条及其多项式段。

bspline(t)

此 B 样条由 4 个多项式段组成:绘图中的红色、绿色、紫色和黑色曲线,每条曲线的阶数均为 3。

垂直线标记您之前定义的节点 t

节点为 t(i)≤····≤ t(i+k) 的 B 样条在区间 (t(i)..t(i+k)) 上为正,在该区间之外为零。它是阶为 k 的分段多项式,断点在 t(i),...,t(i+k) 处。这些节点可能重合,精确的重数决定两个多项式段在此处联接的平滑度。

在新子图中绘制另一个 B 样条

创建第二个节点序列。

t2=[2 3 4 5];

在同一图窗中(但在不同子图中)绘制具有节点序列 t2 的 B 样条。

bspline(t,1)
bspline(t2 ,2)

Copyright 2019 The MathWorks, Inc.

输入参数

全部折叠

B 样条的非递减节点序列,指定为向量。

数据类型: single | double

2×2 窗口的子图索引,指定为标量。此值必须小于 5。

数据类型: single | double

输出参量

全部折叠

pp 型样条,以具有以下字段的结构体形式返回。有关 pp 型的详细信息,请参阅 pp 型

样条的形式,以 pp 形式返回。pp 表示样条以分段多项式形式给出。

样条的节点位置,以向量或多元数据的向量元胞数组形式返回。向量包含严格递增的元素,这些元素代表定义多项式段的每个区间的开始点和结束点。

每段的多项式系数,以矩阵或多元数据的数组形式返回。

描述样条的多项式的段数,以标量形式或包含多元数据每个变量中段数的向量形式返回。

描述样条的每个多项式段的多项式函数的阶,以标量形式或包含多元数据中每个变量阶的向量形式返回。

目标函数的维度,以标量形式返回。

版本历史记录

在 R2006b 中推出