1.要想VTK使用GPU体绘制的话,一定要下directX SDK,这个是惨痛的教训。
2.VTK用CMAKE的时候记得选择GUISUPPORT和MFC,不然和MFC一起用不了
3.ITK按照CMAKE的基本设置就可以了
4.CUDA的话 下载好cuda tookit和GPU Computing SDK 3.2的版本相对于3.1的文件结构变化比较大,rules文件的位置都不一样了,现在在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\extras\visual_studio_integration\rules里面,我选了NvCudaRuntimeApi.v3.2.rules,其他的没试过
4.下面就是VS2008的设置了
常规 在共享 DLL 中使用 MFC
C++----常规
附加包含目录
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\include;C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK 3.2\C\common\inc;"D:\home\src\InsightToolkit-3.14.0\Utilities\gdcm\src";D:\home\bin\vtk;D:\home\bin\vtk\Common;D:\home\bin\vtk\Utilities;D:\home\bin\vtk\VolumeRendering;D:\home\bin\vtk\Rendering;D:\home\bin\vtk\Charts;D:\home\bin\vtk\GUISupport\MFC;D:\home\bin\vtk\Utilities\vtkalglib;"D:\home\src\vtk-5.6.1\Infovis";"D:\home\src\vtk-5.6.1\Geovis";"D:\home\src\vtk-5.6.1\Views";"D:\home\src\vtk-5.6.1\VolumeRendering";"D:\home\src\vtk-5.6.1\Hybrid";"D:\home\src\vtk-5.6.1\Widgets";"D:\home\src\vtk-5.6.1\Rendering";"D:\home\src\vtk-5.6.1\Charts";"D:\home\src\vtk-5.6.1\Rendering\Testing\Cxx";"D:\home\src\vtk-5.6.1\IO";"D:\home\src\vtk-5.6.1\Imaging";"D:\home\src\vtk-5.6.1\Graphics";"D:\home\src\vtk-5.6.1\GenericFiltering";"D:\home\src\vtk-5.6.1\Filtering";"D:\home\src\vtk-5.6.1\Common";"D:\home\src\vtk-5.6.1\Utilities";"D:\home\src\vtk-5.6.1\Common\Testing\Cxx";D:\home\bin\vtk\Utilities\vtklibproj4;"D:\home\src\vtk-5.6.1\Utilities\vtklibproj4";D:\home\bin\vtk\Utilities\DICOMParser;"D:\home\src\vtk-5.6.1\Utilities\DICOMParser";D:\home\bin\vtk\Utilities\vtkfreetype\include;"D:\home\src\vtk-5.6.1\Utilities\vtkfreetype\include";D:\home\bin\vtk\Utilities\vtknetcdf;"D:\home\src\vtk-5.6.1\Utilities\vtknetcdf";D:\home\bin\vtk\Utilities\vtkexodus2\include;"D:\home\src\vtk-5.6.1\Utilities\vtkexodus2\include";D:\home\bin\vtk\Utilities\MaterialLibrary;"D:\home\src\vtk-5.6.1\Utilities\MaterialLibrary";D:\home\bin\vtk\Utilities\verdict;"D:\home\src\vtk-5.6.1\Utilities\verdict";"D:\home\src\vtk-5.6.1\Utilities\utf8\source";"D:\home\src\vtk-5.6.1\GUISupport\MFC";"D:\home\src\vtk-5.6.1\Utilities\vtkalglib";D:\home\bin\itk\Utilities\gdcm;D:\home\bin\itk\Utilities\vxl\core;D:\home\bin\itk\Utilities\vxl\vcl;D:\home\bin\itk\Utilities\vxl\v3p\netlib;"D:\home\src\InsightToolkit-3.14.0\Utilities\vxl\core";"D:\home\src\InsightToolkit-3.14.0\Utilities\vxl\vcl";"D:\home\src\InsightToolkit-3.14.0\Utilities\vxl\v3p\netlib";"D:\home\src\InsightToolkit-3.14.0\Code\Numerics\Statistics";"D:\home\src\InsightToolkit-3.14.0\Utilities";D:\home\bin\itk\Utilities;"D:\home\src\InsightToolkit-3.14.0\Utilities\itkExtHdrs";"D:\home\src\InsightToolkit-3.14.0\Utilities\nifti\znzlib";"D:\home\src\InsightToolkit-3.14.0\Utilities\nifti\niftilib";"D:\home\src\InsightToolkit-3.14.0\Utilities\expat";D:\home\bin\itk\Utilities\expat;D:\home\bin\itk\Utilities\DICOMParser;"D:\home\src\InsightToolkit-3.14.0\Utilities\DICOMParser";D:\home\bin\itk\Utilities\NrrdIO;"D:\home\src\InsightToolkit-3.14.0\Utilities\NrrdIO";"D:\home\src\InsightToolkit-3.14.0\Utilities\MetaIO";"D:\home\src\InsightToolkit-3.14.0\Code\SpatialObject";"D:\home\src\InsightToolkit-3.14.0\Code\Numerics\NeuralNetworks";"D:\home\src\InsightToolkit-3.14.0\Code\Numerics\FEM";"D:\home\src\InsightToolkit-3.14.0\Code\IO";"D:\home\src\InsightToolkit-3.14.0\Code\Numerics";"D:\home\src\InsightToolkit-3.14.0\Code\Common";"D:\home\src\InsightToolkit-3.14.0\Code\BasicFilters";"D:\home\src\InsightToolkit-3.14.0\Code\Algorithms";D:\home\bin\itk;D:\home\src\InsightToolkit-3.14.0\Wrapping\WrapITK\ExternalProjects\ItkVtkGlue\src
优化-选择禁用
预处理器定义 WIN32;_WINDOWS;_DEBUG
代码生成选 多线程调试DLL
基本运行时检查 两者(/RTC1,等同于 /RTCsu)
预编译头---不使用
链接器
选择增量链接--否
附加库目录:
"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v3.2\lib\Win32";"C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK 3.2\C\common\lib";"C:\Program Files\VTK\bin";D:\home\bin\vtk\bin\Debug;"D:\home\bin\itk\bin\$(OutDir)";D:\home\bin\itk\bin\Debug
附加依赖项:
cudart.lib cutil32D.lib vtkVolumeRendering.lib vtkWidgets.lib vtkHybrid.lib vtkRendering.lib vtkGraphics.lib vtkverdict.lib vtkImaging.lib wbemuuid.lib vtkIO.lib vtkFiltering.lib vtkCommon.lib vtkDICOMParser.lib vtkmetaio.lib comctl32.lib wsock32.lib vtksqlite.lib vtkpng.lib vtktiff.lib vtkzlib.lib vtkjpeg.lib vtkexpat.lib vtksys.lib ws2_32.lib vtkftgl.lib vtkfreetype.lib opengl32.lib vfw32.lib vtkexoIIc.lib ITKAlgorithms.lib ITKStatistics.lib ITKFEM.lib itkNetlibSlatec.lib ITKNumerics.lib ITKBasicFilters.lib ITKIO.lib ITKNrrdIO.lib itkgdcm.lib itkjpeg12.lib itkjpeg16.lib itkopenjpeg.lib snmpapi.lib rpcrt4.lib itkpng.lib itktiff.lib itkjpeg8.lib ITKSpatialObject.lib ITKCommon.lib itkvnl_inst.lib itkvnl_algo.lib itkv3p_netlib.lib itkvnl.lib itkvcl.lib ITKMetaIO.lib itksys.lib ws2_32.lib comctl32.lib wsock32.lib ITKDICOMParser.lib ITKEXPAT.lib ITKniftiio.lib ITKznz.lib itkzlib.lib
忽略特定库:libcmt.lib
系统 -----子系统 Windows (/SUBSYSTEM:WINDOWS)
高级----目标计算机 X86
CUDA RUNTIME API ----HOST 选择 多线程调试DLL
目标平台 X86