vtk6.1.0+qt5.3.2+cmake2.8.12.2+win7+64位安装配置过程

系统win7 64位,已装vs2012,所有软件安装及打开都用管理员身份

下面详细介绍QT和VTK结合开发的环境配置步骤

1.      下载软件版本及地址

①      qt的安装文件qt-opensource-windows-x86-msvc2012_opengl-5.3.2.exe

http://download.qt-project.org/archive/qt/5.3/5.3.2/

②      qt的vs2012插件qt-vs-addin-1.2.3-opensource.exe

http://qt-project.org/downloads

③      cmake-2.8.12.2-win32-x86.rar

http://download.csdn.net/detail/dedje/8276415

④      VTK-6.1.0.zip

http://www.vtk.org/files/release/6.1/VTK-6.1.0.zip

⑤      VTKData-6.1.0.zip

http://www.vtk.org/files/release/6.1/VTKData-6.1.0.zip

 

2.      安装qt

分别执行上面的①②后,添加系统路径。

变量名:PATH

变量值:D:\Qt\Qt5.3.2\5.3\msvc2012_opengl\bin

(qt安装在D:\Qt\Qt5.3.2目录,qt插件安装在D:\Qt目录)

 

打开VS2012,选择菜单->qt5->qt options->qt versions->add,在path中填入qmake.exe的上级目录,(我的qmake.exe在D:\Qt\Qt5.3.2\5.3\msvc2012_opengl\bin,所以填入的目录是D:\Qt\Qt5.3.2\5.3\msvc2012_opengl)。

至此你就可以在VS2012中创建qt项目了。

下面开始配置VTK。

3.      把④⑤解压到D:\VTK6下,④改名为VTKSource,⑤改名为VTKData

解压③后安装cmake,我的安装路径是在D:\VTK6\CMake 2.8

(1)       打开cmake-gui.exe

在sourcecode和build里面分别填上刚才的源文件及要放在编译文件的路径。点击Configure,选择visual studio 11,(虽然是64位系统,但是有教程建议不要选visual studio 11 win64,我没有试过选了会怎么样)。


等待配置完成后,会有错误发生,需要做如下修改:

build_shared_libs 勾选

点击addentry,添加qt的安装路径


vtk_group_qt 勾选

再次点击configure,完成后再做如下修改

vtk_qt_version改成5,确认QT_QMAKE_EXECUTABLE为你的qmake.exe的地址,再次configure,没有错误后点击Generate,生成项目文件。

(2)          在你的编译文件路径下(D:\VTK6\VTKBin2)找到VTK.sln,以管理员方式打开,准备两次编译:

A.release版本编译


选择生成解决方案即可,完成后可能会有SAFESEH错误,只要找到相关项目,在链接->命令行中加入/safeseh:no,然后再次生成解决方案。

B.debug版本编译

和release编译步骤相同。

待完成后,把release中的QVTKWidgetPlugin.lib,QVTKWidgetPlugin.dll拷贝到D:\Qt\Qt5.3.2\5.3\msvc2012_opengl\plugins\designer下,然后打开qt designer就可以看到qvtk选项了。

 

(3)上面的步骤只是将下载下来的VTK源码在windows的平台上生成了相当于setup文件,就是install工程,还需要在编译 install工程才能在cmake时候的变量CMAKE_INSTALL_PREFIX下生成安装文件,(在前面编译的时候INSTALL工程都是skip的,没有编译),在visual studio 中的solution中找到INSTALL,点击BUILD ONLY PROJECTbuild安装,如下图


这样就会在C:\Program Files(x86)\VTK下生成如下文件:


表示vtk安装成功。

(4)添加系统路径

PATH=C:\ProgramFiles (x86)\VTK\bin

QTDIR=D:\Qt\Qt5.3.2\5.3\msvc2012_opengl

 

以上就完成了所以的配置,下面举例如何建立自己的项目

1.      打开vs2012,创建新项目,选择Qt Application


 

(2)在main.cpp中添加如下代码

#define vtkRenderingCore_AUTOINIT 4(vtkInteractionStyle,vtkRenderingFreeType,vtkRenderingFreeTypeOpenGL,vtkRenderingOpenGL)
//#define vtkRenderingVolume_AUTOINIT 1(vtkRenderingVolumeOpenGL)A
#include "aa.h"//改成你自己项目的头文件
#include<QtWidgets/QApplication>
#include<vtkSmartPointer.h>
#include<vtkSphereSource.h>
#include<vtkPolyDataMapper.h>
#include<vtkActor.h>
#include<vtkImageViewer.h>
#include<vtkRenderWindowInteractor.h>
#include<vtkInteractorStyleImage.h>
#include<vtkJPEGReader.h>
#include<vtkRenderer.h>
#include<QVTKWidget.h>
 
int main(int argc,char **argv)
{
     QApplication app(argc,argv);
     QVTKWidget widget;
     widget.resize(256,256);
     vtkSmartPointer<vtkSphereSource>sphereSource=vtkSmartPointer<vtkSphereSource>::New();
     sphereSource->Update();
     vtkSmartPointer<vtkPolyDataMapper>sphereMapper=vtkSmartPointer<vtkPolyDataMapper>::New();
     sphereMapper->SetInputConnection(sphereSource->GetOutputPort());
     vtkSmartPointer<vtkActor>sphereActor= vtkSmartPointer<vtkActor>::New();
     sphereActor->SetMapper(sphereMapper);
     vtkSmartPointer<vtkRenderWindow>renderWindow=vtkSmartPointer<vtkRenderWindow>::New();
     vtkSmartPointer<vtkRenderer>renderer=vtkSmartPointer<vtkRenderer>::New();
     renderWindow->AddRenderer(renderer);
     renderer->AddActor(sphereActor);
     renderer->ResetCamera();
     widget.SetRenderWindow(renderWindow);
     widget.show();
     app.exec();
     return EXIT_SUCCESS;
}

添加包含目录及所有的库文件。最终结果如下。


评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值