BSplineCurve

BSplineCurve[{pt1,pt2,}]

是一个图形基元,表示控制点为 pti 的非均匀有理 B 样条曲线.

更多信息和选项

范例

打开所有单元关闭所有单元

基本范例  (1)

二维空间中一个 B 样条曲线和它的控制点:

三维空间中一个 B 样条曲线和它的控制点:

范围  (12)

曲线规范  (5)

一个三次 B 样条曲线:

有相同控制点和不同次数的 B 样条曲线:

在缺省情况下,B 样条曲线是开放的:

封闭的 B 样条曲线在末端自动增加第一个控制点:

可以显式指定节点以控制曲线的平滑度:

可以指定每个点的权重:

曲线样式  (4)

粗细不同的 B 样条曲线:

尺度缩放后的粗细度:

以打印机点位单位的粗细度:

虚曲线:

彩色曲线:

坐标指定  (3)

Scaled 坐标:

二维空间中用 ImageScaled 坐标:

在二维空间用 Offset 坐标:

推广和延伸  (4)

节点序列  (3)

在缺省情况下,节点以确保曲线整体平滑的方式产生:

通过重复节点,您可以减少曲线的平滑度:

"Unclamped" 产生均匀节点,并且曲线并不穿过端点:

SplineClosed 组合的非限定节点将产生一个均匀的周期性 B 样条曲线:

控制点权重  (1)

在缺省情况下,所有控制点有相等的权重:

对一个控制点给出更多的权,曲线将被该点所吸引:

应用  (5)

轮廓和形状  (1)

通过使用权重,您可以制作一个有理的 B 样条曲线,例如一个圆:

插值  (2)

选择插入的六个点:

计算控制点之间的距离:

计算关于距离的规范化参数 (chord 长度参数化):

一个三次 B 样条曲线,使用限定节点:

建立求解的方形基底矩阵:

求解线性系统获得控制点:

显示有原数据的插值曲线:

选择插值的三维点:

计算控制点之间的距离:

计算关于距离的规范化参数 (弦长参数化):

一个三次 B 样条曲线,使用限定的节点:

建立求解的方形基底矩阵:

求解线性方程组获得控制点:

显示有原数据的插值曲线:

最小二乘法拟合  (1)

取样与随机噪音近似的点的列表:

采用均匀的参数化:

定义一个函数,对给出数量的控制点和阶产生限定节点:

定义最小二乘法的基底矩阵:

具有12个控制点三次 B 样条曲线将用于拟和:

显示数据和曲线:

不同数量控制点的结果:

有 12 个控制点和不同阶的结果:

几何不变性  (1)

从一个 B 样条曲线到另一个 B 样条曲线的线性转换:

属性和关系  (6)

次数为1的 B 样条曲线等价于一条直线:

一个 B 样条曲线是仿射不变的:

一个 B 样条曲线位于控制点子集的凸壳的并集中:

在三维空间中,一个具有平面控制点的 B 样条曲线在这个平面中:

BSplineBasis 可用于构建 B 样条曲线对象:

单个基函数具有有界支持:

改变节点影响基函数,就像对于 BSplineCurve 一样:

从两个集合控制点的平均值产生的一个 B 样条曲线:

新曲线是两个 B 样条曲线的平均值:

Wolfram Research (2008),BSplineCurve,Wolfram 语言函数,https://reference.wolfram.com/language/ref/BSplineCurve.html.

文本

Wolfram Research (2008),BSplineCurve,Wolfram 语言函数,https://reference.wolfram.com/language/ref/BSplineCurve.html.

CMS

Wolfram 语言. 2008. "BSplineCurve." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/BSplineCurve.html.

APA

Wolfram 语言. (2008). BSplineCurve. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/BSplineCurve.html 年

BibTeX

@misc{reference.wolfram_2024_bsplinecurve, author="Wolfram Research", title="{BSplineCurve}", year="2008", howpublished="\url{https://reference.wolfram.com/language/ref/BSplineCurve.html}", note=[Accessed: 22-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_bsplinecurve, organization={Wolfram Research}, title={BSplineCurve}, year={2008}, url={https://reference.wolfram.com/language/ref/BSplineCurve.html}, note=[Accessed: 22-November-2024 ]}