【计算机图形学】libigl库的安装和配置

目录

  • 前言
  • 克隆libigl的github仓库
  • 通过CMake-GUI进行编译
  • CMake Generate进行生成
  • 运行tutorial的项目
  • 脱离tutorial使用libigl

前言

首先先说下,感觉其实如果不需要运行tutorial的话完全可以直接从最后的脱离tutorial使用libigl开始做,前面的这些步骤只需要克隆仓库即可,其他的都不用做。。

克隆libigl的github仓库

git clone --recursive https://github.com/libigl/libigl.git

通过CMake-GUI进行编译

点击Configure进行编译,generator选Visual Studio自带的(默认已经安装了Visual Studio),最后点击Finish
【计算机图形学】libigl库的安装和配置_第1张图片

接着下图为开始编译的情况(我这里已经开始编译了,所以显示的是Stop而非Configure):
【计算机图形学】libigl库的安装和配置_第2张图片
若编译发生错误,科学上网后这个错误就会自己消失:(一次不行就多编译几次)
在这里插入图片描述
如果科学上网后还是出现Configure失败的情况就多尝试几次,或者换个代理再试一试,直到出现Configuring done为止,我大概在这一步也尝试了5、6、7、8遍:
【计算机图形学】libigl库的安装和配置_第3张图片

CMake Generate进行生成

点击Configure按钮旁的Generate进行生成:
【计算机图形学】libigl库的安装和配置_第4张图片
结束后会有Generating done的提示。
【计算机图形学】libigl库的安装和配置_第5张图片

运行tutorial的项目

此处以401项目举例,首先右键401并设置为启动项目
【计算机图形学】libigl库的安装和配置_第6张图片
将启动项旁边的这两个,一个改成Release一个改成x64。注意,如果不改成Release,使用debug的话,跑起来可能是会报错的!
在这里插入图片描述
跑起来的结果如下图~
【计算机图形学】libigl库的安装和配置_第7张图片

脱离tutorial使用libigl

点击右键项目 -> 属性
【计算机图形学】libigl库的安装和配置_第8张图片
在VC++目录的包含目录中添加igl文件夹
【计算机图形学】libigl库的安装和配置_第9张图片
添加如下所示的文件夹,确定后点击应用->确定。我发现网上的部分教程存在点小误区,应该是把包含igl的include文件夹引入进去,而不是把igl这个文件夹给引入进去,如下图,第一张图是错误的,第二张图才是正确的
【计算机图形学】libigl库的安装和配置_第10张图片
【计算机图形学】libigl库的安装和配置_第11张图片
libigl是基于函数的,每个函数有一个.h文件,需要用到哪个函数,引用相应的头文件即可。
直接用官网给出的示例程序进行测试:

#include 
#include 
#include 
#include 
int main()
{
  Eigen::MatrixXd V(4,2);
  V<<0,0,
     1,0,
     1,1,
     0,1;
  Eigen::MatrixXi F(2,3);
  F<<0,1,2,
     0,2,3;
  Eigen::SparseMatrix<double> L;
  igl::cotmatrix(V,F,L);
  std::cout<<"Hello, mesh: "<<std::endl<<L*V<<std::endl;
  return 0;
}

我在运行这个代码时候出现了一个问题:
在这里插入图片描述
我怀疑是因为我没有导入Eigen库所导致的,所以根据【计算机图形学】Visual Studio2019环境下导入Eigen库,我引入了一个Eigen库。
但是又出现了一些新的问题:
在这里插入图片描述
对于这个错误我参考了VS使用scanf报错解决方法error C4996: ‘scanf‘: This function or variable may be unsafe.…的3,在预处理器这里加上_CRT_SECURE_NO_WARNINGS就可以了
【计算机图形学】libigl库的安装和配置_第12张图片
接着运行成功,可以撒花了:
【计算机图形学】libigl库的安装和配置_第13张图片

你可能感兴趣的:(计算机图形学,几何学)