【问题标题】:Spline, B-Spline and NURBS C++ library样条曲线、B 样条曲线和 NURBS C++ 库
【发布时间】:2021-01-15 23:57:30
【问题描述】:

有谁知道样条曲线的库或类集 - 特别是 b 样条曲线和 NURBS(可选)。

目前,一个快速、高效的 b 样条库对我来说非常有用。

【问题讨论】:

    标签: c++ graphics


    【解决方案1】:

    我知道我是在这个问题被问到几个月后才回答的,但对于可能正在寻找类似答案的其他人,我会指出 openNURBS

    OpenNURBS 也恰好是建模包Rhinoceros 中使用的库。这是一个非常完整的库,值得考虑。

    【讨论】:

    • 谢谢你!如果我还没有标记答案,OpenNurbs 可能应该得到它。
    • 明白。只是希望使答案更完整。 :)
    • 我认为 openNURBS 只关心 .3dm 格式的保存/打开;它实际上并不执行几何运算。为此,如链接中所述,需要 Rhino SDK,这是专有技术。
    【解决方案2】:

    1.) 对于 B 样条曲线 - 你应该检查 C 中的数值配方(有这本书,也可以在线参考)

    2.) 还要检查:sourceforge.net/projects/einspline/ &this

    -AD

    【讨论】:

    • C 代码中的数字配方曾经属于相当严格的许可。不确定是否仍然如此,但请注意,在开源项目中使用它可能是非法的(虽然我不是这方面的专家)
    • Numerical Recipes 在 B-Splines 上没有任何内容。
    【解决方案3】:

    这个库也很有希望:http://libnurbs.sourceforge.net

    【讨论】:

      【解决方案4】:

      Eigen Spline 基于著名的(快速)C++ 线性代数模板库。

      【讨论】:

        【解决方案5】:
        【解决方案6】:

        麻省理工学院提供了一个很好的图书馆,还附有在线书籍。这是(超)书 http://web.mit.edu/hyperbook/Patrikalakis-Maekawa-Cho/mathe.html

        在链接的底部,您会找到相关的软件,这里: http://web.mit.edu/hyperbook/Patrikalakis-Maekawa-Cho/software.html

        GSL 有一个很好的非常基本的 b 样条实现,但它不包括 NURBS 曲线,也不包括用于插入/移除结的算法,或者一些更高级的东西。您还可以在 Piegl & Tiller 的“The NURBS book”一书中找到许多可以用您自己的语言编译的有用算法: http://www.amazon.com/NURBS-Book-Monographs-Visual-Communication/dp/3540615458

        数值配方不包括对 b 样条的支持。

        【讨论】:

          【解决方案7】:

          SISL 似乎是一个很好的 NURBS 库(在 AGPL 许可下)。它是GoTools 的一部分,可以克隆here

          【讨论】:

            【解决方案8】:

            vspline 是一个免费的开源 B 样条库。它全面而快速,带有额外的代码来有效地处理像图像和体积这样的 nD 栅格数据。它是 C++11 标准中的仅标头 C++ 模板元代码,几乎没有外部依赖项。还有一个同名的debian包。

            【讨论】:

              猜你喜欢
              • 2017-03-04
              • 1970-01-01
              • 2013-06-07
              • 1970-01-01
              • 2021-03-12
              • 2014-12-16
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多