VTK-从6.1迁移到8.2 [英] VTK - Migrating from 6.1 to 8.2

查看:463
本文介绍了VTK-从6.1迁移到8.2的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个使用VTK 6.1/VS2008的VTK/MFC项目.我打算将此项目迁移到VTK 8.2/VS2010,但遇到问题:

I have a VTK/MFC project which use VTK 6.1 / VS2008. I intend to migrate this project to VTK 8.2 / VS2010, and I encounter a problem:

在stdafx.h,VTK 6.1我有:

at stdafx.h, VTK 6.1 I have:

#define vtkRenderingCore_AUTOINIT 4(vtkInteractionStyle, vtkRenderingFreeType, vtkRenderingFreeTypeOpenGL, vtkRenderingOpenGL)
#define vtkRenderingVolume_AUTOINIT 1(vtkRenderingVolumeOpenGL)

这些init在VTK 8.2上不起作用,我收到链接错误:

These inits doesn't work on VTK 8.2, I get a link error:

error LNK2001: unresolved external symbol "void __cdecl vtkRenderingFreeTypeOpenGL_AutoInit_Construct(void)" (?vtkRenderingFreeTypeOpenGL_AutoInit_Construct@@YAXXZ)

...在VTK 8.2中应该写些什么?

... what should write here in VTK 8.2 ?

以后的修改: 我遇到另一个链接错误:

Later edit: I encounter another link error:

vtkRenderingOpenGL2-8.2.lib(vtkOpenGLState.obj) : error LNK2019: unresolved external symbol __imp_SymGetLineFromAddr64 referenced in function "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl getProgramStack(void)" (?getProgramStack@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)

可能是什么问题?

推荐答案

如何使用OpenGL2?

How about use OpenGL2?

我在VTK 8.1和2017年有一个相同的问题

I have a same Problem at VTK 8.1 , vs2017

我使用OpenGL2更改了CMAKE Option,并更改了定义

I changed CMAKE Option use OpenGL2 , and changed define

#include <vtkAutoInit.h>

VTK_MODULE_INIT(vtkInteractionStyle)
VTK_MODULE_INIT(vtkRenderingOpenGL2)
VTK_MODULE_INIT(vtkRenderingVolumeOpenGL2)
VTK_MODULE_INIT(vtkRenderingFreeType)

它奏效了

这篇关于VTK-从6.1迁移到8.2的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆