c++ - 绘制 NURBS 曲线?

标签 c++ c curve nurbs opennurbs

过去一周我一直面临这个问题。对于我当前的项目,我需要绘制 NURBS 曲线,该项目已经使用了 OpenNURBS,但我无法弄清楚如何使用它。

我的问题是,如何从几个控制点得到曲线点?

我做了很多搜索,然后看到了这个网站:http://www.nar-associates.com/nurbs/c_code.html

我可以使用该代码,但我不明白如何扩展/简化它以使用 N 个控制点。

(此外,我使用的是 C++,所以我将代码从页面转换为所述语言,特定于 C++ 的答案会更好,但我在语言之间转换没有任何问题。)

最佳答案

试试这个库:

http://libnurbs.sourceforge.net/

非均匀有理 B 样条 (NURBS) 曲线和曲面是非常通用的数学曲面,广泛用于在计算机图形学中表示复杂的三维形状。

libnurbs 的目标是提供一个干净、健壮和强大的库,能够定义、操作和分析 NURBS 曲线和曲面。我们将构建 openNURBS 库提供的基础,实现该库中缺少的功能并根据需要进行更改。 openNURBS 努力的目标是提高各种 CAD 系统之间的互操作性,因此他们没有动力开发或发布功能更全的库(即 Rhino,他们的商业平台)——因此需要这个项目。

关于c++ - 绘制 NURBS 曲线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11841391/

相关文章:

c++ - OpenCV imwrite 保存黑色 png

c++ - 如何获取QTreeView中没有出现的文件

c - 如何在 C 代码中动态更改/伪造 'file size'

javascript - 使用 Javascript 和简单的数学沿着曲线制作动画

iphone - iOS如何计算曲线包围的像素数/面积?

matlab - 在MATLAB中,如何找到所有这些曲线下间隙最高点的坐标位置?

c++ - 具有智能数组对象的类

c++ - 如何将对象的所有权传递给函数外部

c - GNU 中 _TRACE 宏在哪里定义?

c - 在 if else 中相互比较时,字符如何存储值?