0

我有一个封闭的 3 阶(2 级)BSpline,它具有以下参数

9 个控制点 14 个结点

为什么关系是 9 + 3 + 2 = 14?

4

2 回答 2

0

您的 B 样条可能是 2 次周期 B 样条,其末尾将有两个重复的控制点,与前两个控制点相同。对于这种情况,当显示所有 11 个控制点时,看起来只有 9 个。您使用的软件也可能决定不在运行时数据结构或 C++ 类中存储两个相同的控制点,您将最终看到 9 个 14 节的控制点。

于 2014-06-21T03:16:28.493 回答
0

b 样条的阶数 (N)、控制点数 (C) 和节点数 (K) 之间的关系是

K = C + O - 2

或者

K = C + O

选择取决于用于初始和最终结的约定。

一些库,OpenGL 的旧辅助库是一个重要的例子,存储了初始和最终结值的额外副本。这些实现将具有 K = C + O。如果您检查用于评估 b-spilnes 的算法,则不需要重复的初始和最终结值值。出于这个原因,其他库,opennurbs 和 Rhino 3d 的 SDK 是值得注意的例子,具有 K = C + O -2。

更多信息请访问http://wiki.mcneel.com/developer/onsuperfluousknot

于 2014-06-18T23:04:34.433 回答