Opennurbs是Rhion的一个开源几何库,用起来挺舒服的,虽然不带大部分几何运算功能(什么曲线相交、长度、曲面相交等等),但是用它做一些基本的几何数据存储和分发还是妥妥的足够了。
它是MIT License。妙啊。
Opennurbs 的下载地址是 https://github.com/mcneel/opennurbs 。
目前,笔者只成功地编译了它的静态库。
有经验的同学们如果在使用 Visual Studio 编译
Opernnubs时遇到了Freetype 2.6.3相关问题, 具体表现为:Error C2065 'AF_SCRIPT_CYRL': undeclared identifier freetype263_staticlib ...\opennurbs\freetype263\src\autofit\afstyles.h 100那么问题很简单,仅需修改一个地方即可成功:
- 在
freetype263_staticlib项目的External Dependencies(外部依赖项)中找到afscript.h文件;- 在该文件的第44行找到带
/* */的注释;- 删掉该注释,或者在
*/注释结束符号前加入一个空格即可。这个bug是微软VC++编译器的锅,该编译器在遇到 “某些特定
Unicode字符后紧跟*/多行注释结束符” 时,会出现无法正确识别注释结束符号的情况。
准备工作
- Visual Studio
提笔写这篇文章的时候,VS2017以前的版本也挺难下载到了,好在2017、2019都能编译,这里就用2019,区别不大 - 下载好的opennurbs
无论是git clone或者是直接打包下载源码,只要确保所有的文件能下载下来就行
笔者这里使用的是git,存放在E:\demo文件夹下。

别的好像也没了,直接打开源码,找到 opennurbs_public.sln 这个VS解决方案文件,直接进行一个打开,进入熟悉的VS界面,准备开工。
尝试编译静态库…
我们可以看到一共有9个C++项目,其中6个是Example,也就是示例,我们并不关心它们。

我们关心的是 opennurbs_public_staticlib 这个静态库项目。直接在该项目上点击右键,选择build编译。

成功了,nice。

妙啊!那现在我们就直接来试试用刚刚编译成功的静态库来创建自己的一个C++程序吧!
使用opennurbs创建自己的C++项目
再打开一个Visual Studio,创建一个C++的Console项目,放在与刚刚openurbs平级的文件夹下。


在main函数里加入下面的测试代码,创建几个三维点,然后求它们之间的距离:
#include <iostream>

本文介绍如何在Visual Studio环境下成功编译并使用Opennurbs库,解决编译过程中的常见问题,并通过实例展示如何在C++程序中调用其几何运算功能。
最低0.47元/天 解锁文章
1万+





