本文在CadCaeCam论坛的精华贴"VTK安装三步曲"的基础上完成,并补充了在其之外遇到的各种问题。
本文以VC6为例,要用VS.NET 2005的请参见:在Visual Studio 2005环境下安装VTK教程 (已测试通过)
1. 必须要下载的东西,VC6已经装好为前提:
vtk-5.0.4-win32.exe 安装程序 http://vtk.org 的Download
vtk-5.0.4.zip 源程序
vtkdata-5.0.4.zip 数据
vtkDocHtml VTK手册(可选)
cmake-2.4.7-win32-x86.exe http://www.cmake.org/HTML/Index.html
2. 先执行 vtk-5.0.3-win32.exe安装到C:/VTK 5.0, 安装后会产生 vtk5.0 文件夹里面还包括 bin 等子文件夹。
(为了方便请统一用这个目录,我在后文中提供了一个教程,其project setting也是按这个目录配置的)
3. 将 vtk-5.0.4.zip 解压到c:/VTK 5.0/VTK, 将vtkdata-5.0.4.zip也解压到c:/VTK 5.0/vtkdata
(其实既然要用源文件编译,windows install的安装并不是必须的,但这是按"VTK安装三步曲"的顺序来的,很多人都统一这样用的,避免不必要的麻烦,也就不改了)
4. 安装 cmake-2.4.7-win32-x86.exe,方便起见装到c:/cmake。运行cmake,设置sourse code目录为c:/vtk5.0/VTK/, build目录为c:/vtk5.0/bin/
按 configure 按钮,cmake 软件会让你选择需要使用的编译器,这里我们选vc6.0,然后cmake会描所需要的文件,停下来之后,我们就可以修改 cmake选项了。
打开Show Advanced Values再configure,才可以看到一个vtk_use_guisupport,打开它,才能选vtk_use_mfc,再configure,configure的次数是无所谓的。
很多人把 vtk 安装好了,却无法运行vtk 中与mfc 混合编程的例子,提示错误都是缺少vtkmfc.lib,问题就出在这个选项,我们必须把它设置为 on。
至于vtk_use_qvtk,这是给QT用的vtk,但目前只支持QT3,现在的版本是QT4,我试过了,cmake通不过。只能等着新版cmake了。
还有要注意的就是:
vtk_data_root: 目的是告诉cmake,vtk 需要的数据都在哪里,我们的数据在c:/vtk/vtkdata/
cmake_install_prefix: 这个是指定一个目录把.h .lib .dll等精华放在这里,"VTK安装三步曲"里说是为将来装vtk做准备,我不太清楚,反正用它默认的就好了。
build_examples: 就是询问是否编译 vtk 中的例子,你在看这个教程,说明肯定是初次用VTK,建议选上。
build_shared_libs: 如果设置为off,就只会生成lib 文件,用于开发肯定是够了。如果设置为on,将会多生成 dll 文件,这些dll需要拷到windows/system目录下。如果用静态库编程,即off时,应用程序可以独立运行,尺寸也比较大,如果用动态库编程,即on时,应用程序必须找到动态库才能运行,但尺寸可以做得比较小。建议选On, 我试过选OFF,所谓的静态编译,但之后新建一个项目时,还是会出现找不到文件的问题。
vtk_use_parallel: 对于想用vtk 做并行计算的朋友,要把这个选上,对于只想学学vtk 的,保持默认 off
都没问题了所有项目会变成灰色。这时就可以按OK了,几秒钟后,cmake自动退出,为VC6准备的make文件已经生成好。
5. 用 vc6.0打开 bin目录下的 vtk.dsw 文件,直接build。这一般要花掉十几分钟。结果保存在c:/vtk5.0/bin/bin 。
如果这个过程报错,可能是防火墙、杀毒软件的原因,请关掉再试。还有就是,我曾经试图在机器上先给VS2005再给VC6装VTK,结果VC6编译时就死在example那里了。最后只能删掉所有vtk目录从第一步再来一遍,only for VC6才通过的。
顺利通过编译就可以继续了。
6. 第4步时build_shared_libs是ON的话,把C:/VTK 5.0/bin/bin/Debug里生成的dll文件都拷到windows/system目录下。
7. 试一下。打开C:/VTK 5.0/bin/Examples/All/VTKExamples.dsw,选择Cone项目,右键set as active project(VC不熟的人一定要记得这个!),然后,build,run. 这时应该能正确运行了。
8. 但还没完。这时能运行的只是vtk自己带的项目,自建的项目还需要自己进行一些设定:
新建一记事本,一定要取消自动换行。把下面的"三大步"copy进去,确保每一步都在一行,以后会经常用到的:
一、修改Project setting->C/C++ ->Category->Preprocessor->Additional include directories:
C:/VTK 5.0/VTK/GenericFiltering,C:/VTK 5.0/VTK/Common,C:/VTK 5.0/VTK/IO,C:/VTK 5.0/VTK/Filtering,C:/VTK 5.0/bin,C:/VTK 5.0/VTK/Rendering,C:/VTK 5.0/VTK/Graphics,C:/VTK 5.0/VTK/VolumeRendering,C:/VTK 5.0/VTK/Imaging,C:/VTK 5.0/VTK/Hybrid,C:/VTK 5.0/VTK/GUISupport,C:/VTK
5.0/VTK/include/vtk-5.0,C:/VTK 5.0/VTK/Parallel,C:/VTK 5.0/VTK/lib,C:/VTK 5.0/VTK/Widgets
二、修改Project setting->Link->Input->Object/library modules:
opengl32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib vtkCommon.lib vtkDICOMParser.lib vtkexoIIc.lib vtkexpat.lib vtkFiltering.lib vtkfreetype.lib vtkftgl.lib vtkGenericFiltering.lib
vtkGraphics.lib vtkHybrid.lib vtkImaging.lib vtkIO.lib vtkjpeg.lib vtkNetCDF.lib vtkpng.lib vtkRendering.lib vtksys.lib vtktiff.lib vtkVolumeRendering.lib vtkWidgets.lib vtkzlib.lib
三、还有Additional library path:
C:/VTK 5.0/bin/bin/Debug
|
像Cannot open include file: 'vtkConeSource.h':这样的错误都是上面三大步没走对或dll没拷到windows/system下造成的。要建立新项目,必须重新配置三大步,因为那三步都是Project setting里的,新项目没有默认这些设置。
如果某个项目再提示缺什么lib或.h的话,再临时加上去就行了。
9. 这时新建一个project, win32 console application, an empty project, 生成后给source files加一个test.cpp,把下面的代码放进去:
#include "vtkConeSource.h"
#include "vtkPolyDataMapper.h"
#include "vtkRenderWindow.h"
#include "vtkCamera.h"
#include "vtkActor.h"
#include "vtkRenderer.h"
#include "vtkProperty.h"
int main()
{
vtkConeSource *cone = vtkConeSource::New();
cone->SetHeight( 3.0 );
cone->SetRadius( 1.0 );
cone->SetResolution( 10 );
vtkPolyDataMapper *coneMapper = vtkPolyDataMapper::New();
coneMapper->SetInputConnection( cone->GetOutputPort() );
vtkActor *coneActor = vtkActor::New();
coneActor->SetMapper( coneMapper );
vtkRenderer *ren1= vtkRenderer::New();
ren1->AddActor( coneActor );
ren1->SetBackground( 0.1, 0.2, 0.4 );
vtkRenderWindow *renWin = vtkRenderWindow::New();
renWin->AddRenderer( ren1 );
renWin->SetSize( 300, 300 );
int i;
for (i = 0; i < 360; ++i)
{
renWin->Render();
ren1->GetActiveCamera()->Azimuth( i );
}
cone->Delete();
coneMapper->Delete();
coneActor->Delete();
ren1->Delete();
renWin->Delete();
return 0;
}
看过vtk example的第一个例子就会知道上面的程序在做些什么。
如果你一定要生成a simple project的话,这时需要做的是:删掉StdAfx.cpp和StdAfx.h及其在main()之上的include,还有在Project setting->C/C++ ->Category->Precompiled Headers里选Not using precompiled headers.
大功告成。。
分享到:
相关推荐
VTK5.6安装配置教程用于配置vtk和wxWidgets和vs2008
VTK5_6安装配置教程 初学者适用 有参考价值
在Visual Studio 2005环境下安装VTK教程
需要的文件VTK-5.0.1-wrap-1.1-bin.zip 和VTK-5.0.1-control-1.1.zip自己下载。 里边有把VS2005还原最开始刚装完的方法。还有环境变量路径的位置。
VS2017社区版+Qt5.12.2+VTK8.2环境配置所需,适用于Release x64模式,已经CMake配置成功,下载解压后可直接配置环境使用,具体教程参考博客。
VTK培训教程中的示例程序,除了一个不能运行,其余的全部可以运行,前提是必须要配置好VTK
使用CODEBLOCKS编译VTK完美教程
65 VTK(Visualization Toolkit)安装和配置 没有找到 vc6.0 或 vc8.0 下的安装版, 若是用 vc7.0 话有现成的安装版本, 只能自己动手编 译了一下 安装版的配置环境(VC6,Windows) 1. 必须要下载的东西,VC6 已经装好...
VC6下用cmake配置VTK图文教程
自己从各官网上下载好的VS2019安装包、CMake3.16安装包、VTK8.2.0(包含VTK-8.2.0和VTK...具体各自的安装教程欢迎前往CSDN博客“Win10-64位(或Win7)+VS2019+ITK4.13.2+VTK8.2+CMake3.16环境配置” 查看安装教程与效果!
VTK(Visualization Toolkit)安装和配置没有找到vc6.0或vc8.0下的安装版,若是用vc7.0话有现成的安装版本,只能自己动手编译了一下
本资源对应下方博客4.7小节。通过CMakeLists.txt 构建好的 VTK 可运行工程 vtk2 文件夹(可实现Cube工程示例中的Demo(立方体)的显示和交互) 具体可前往我的CSDN博客“Win10-64位(或Win7)+VS...查看安装教程与效果!
本资源对应下方博客4.6、4.8小节。通过手动新建项目(不使用CMakeLists.txt构建)配置好的 VTK 可运行工程 vtk1文件夹(可实现VTK中Cube工程Demo(立方体)的显示和交互和实现VTK对png图像读取与...查看安装教程与效果!
本资源对应下方博客4.7小节。通过CMakeLists.txt 构建好的 VTK 可运行工程 vtk2 文件夹(可实现Cube工程示例中的Demo(立方体)的显示和交互) 具体可前往我的CSDN博客“Win10-64位(或Win7)+VS...查看安装教程与效果!
对应下方博客4.1-4.5小节。本资源包含VTK8.2.0通过CMake3.16编译好的全部可运行文件下载(包含VTK8.2.0目录下的Bin、Build、Data、Source文件夹) 其中包含官网下载好的VTK-8.2.0和VTKData压缩包...查看安装教程与效果!
vtk7.0编译包,已经编译好了的配置就可使用,具体教程网上很多,自行学着配置,刚刚帮我学弟配置已经成功了,release和debug都有(注意:这里是x64位的,没有32位的)不懂可留言,欢迎交流学习!
自己从VTK官网上下载好的VTK8.2.0(包含VTK-8.2.0和VTKData压缩包),可直接用。 具体可前往CSDN博客“Win10-64位(或Win7)+VS2019+ITK4.13.2+VTK8.2+CMake3.16环境配置” 查看安装教程与效果!
我折腾了三四天,终于装好了,有什么vtk9以上配置相关的问题可以问我,我在typora写的文档上传后图片不能自动上传,所以导出了pdf,其实不是想收费。
不太懂的建议配合我写的配置教程,有什么相关问题可以留言
自己下载好的CMake3.16安装包,具体安装教程可前往CSDN博客“Win10-64位(或Win7)+VS2019+ITK4.13.2+VTK8.2+CMake3.16环境配置”中查看