标签: libigl

IGL错误:体系结构x86_64的未定义符号

我开始在Mac上的C ++中将igl库用于3d。当我按照教程进行操作时,出现了一个错误。第一个示例,基本上只是读取OFF文件,效果很好。但是第二个没有,使用igl :: viewer。这是代码:

#include <igl/readOFF.h>
#include <igl/viewer/Viewer.h>

Eigen::MatrixXd V;
Eigen::MatrixXi F;

int main(int argc, char *argv[])
{
    // Load a mesh in OFF format
    igl::readOFF("/bunny.off", V, F);

    // Plot the mesh
    igl::viewer::Viewer viewer;
    viewer.data.set_mesh(V, F);
    viewer.launch();
}
Run Code Online (Sandbox Code Playgroud)

然后我进入终端:

g++ -std=c++11 -I path_to_librairies/eigen-eigen-07105f7124f9/ -I path_to_librairies/libigl/include/ -I path_to_libraries/glfw-3.1.2/include/ main.cpp -o Test
Run Code Online (Sandbox Code Playgroud)

其中path_to_libraries是一个个人文件夹,我的库(igl,eigen,glfw)保留在其中。

终端返回许多错误,例如:

Undefined symbols for architecture x86_64:
  "_glActiveTexture", referenced from:
      igl::viewer::OpenGL_state::bind_mesh() in main-805320.o
Run Code Online (Sandbox Code Playgroud)

我还下载了Eigen和glfw。我所做的只是glfw源文件夹中的cmake。

结局,我应该补充一点,当我尝试使用Xcode时,在项目中添加框架OpenGL(我在互联网上找到的东西)消除了一半的错误(与igl :: viewer :: OpenGL有关的错误),但有一些igl :: viewer ::观众仍然存在。

有人有任何线索吗?

c++ opengl glfw libigl

2
推荐指数
1
解决办法
1008
查看次数

在 libigl 查看器上清除、移动、动画点?

我想使用 libigl 查看器来显示 3d 模型和一个点。3d 模型将始终保持不变,但点会四处移动。我目前的做法基本上是:

  1. 加载 3d 模型和点
  2. viewer.data().clear() 清除查看器
  3. 再次转到步骤 1

但是,它很慢,尤其是当 3d 模型有很多顶点时,因为每次清除后都需要重新加载所有内容。最好,我想要么只清除那个点,要么将该点移动到一个新坐标。有没有办法做到这一点?

ros eigen3 libigl

1
推荐指数
1
解决办法
570
查看次数

标签 统计

libigl ×2

c++ ×1

eigen3 ×1

glfw ×1

opengl ×1

ros ×1