我不能在QT中使用任何类型的vtk 2D图表而不会收到错误:
“一般警告:在vtkContextDevice2D.cxx中,第31行错误:找不到对'vtkContextDevice2D的替代”。
对此的讨论很少,几乎所有建议都是升级qt / vtk,但是这些建议已经使用很久了,我使用的是最新版本。
这也无济于事:
include "vtkAutoInit.h"
VTK_MODULE_INIT(vtkRenderingOpenGL2); // VTK was built with vtkRenderingOpenGL2
VTK_MODULE_INIT(vtkInteractionStyle);
信息:64位计算机上的Win64,vtk8.2.0,Qt5.13.0,使用cmake3.15.0在MCVS2017(Release x64)中编译/内置(其他一切都可以正常工作,即使使用vtk进行3D渲染也可以)
码:
view->SetInteractor(this->qvtkWidgetRight->GetInteractor());
this->qvtkWidgetRight->SetRenderWindow(view->GetRenderWindow());
What the error produces 最佳答案
当我运行以下示例时,我遇到了类似的问题:QtBarChart,并通过与这些vtk libraries链接来解决了此问题:
find_package(VTK COMPONENTS
vtkChartsCore
vtkCommonCore
vtkCommonDataModel
vtkInteractionStyle
vtkRenderingContext2D
vtkRenderingContextOpenGL2
vtkRenderingCore
vtkRenderingFreeType
vtkRenderingGL2PSOpenGL2
vtkRenderingOpenGL2
vtkViewsContext2D
QUIET
看来我错过了一些图书馆。