zoukankan      html  css  js  c++  java
  • VTK的安装配置-使用VS2010


    1、CMake的安装


    CMake安装是用来对VTK编译前的配置工作。此博客中使用的是CMake2.8。CMake的下载可到https://cmake.org/站点上进行下载。


    2、VTK源代码


    VTK源代码直接从VTK的官方站点上下载得到。此博客中下载的是vtk-5.10.1.zip和vtkdata-5.10.1.zip两个压缩包。

    当中vtk-5.10.1.zip是VTK的源代码。vtkdata-5.10.1.zip是VTK使用中的数据文件,这个文件也能够不用下载。

    http://www.vtk.org/download/

    在D:Program Files目录下新建三个目录。将vtk-5.10.1.zip中的文件解压到VTKSrc目录,vtkdata-5.10.1.zip中的文件解压到VTKData目录。VTKBin目录用来放CMake产生的project文件和编译后的文件。




    解压完成后各文件夹的结构例如以下:

    VTKSrc




    VTKData



    3、CMake配置项目


    打开CMake,输入源代码和输出文件路径,然后进行配置。设置下面几个配置项:

    1、BUILD_EXAMPLES  该选项位于BUILD分组中。

    该选项表示是否编译VTK中的例程。不勾选状态下时能够缩短编译的时间,须要学习VTK中自带例程的能够选择该项。

    这里不选择该项。

    2、BUILD_SHARED_LIBS 相同位于BUILD分组中。选中代表编译生成DLL文件,也就是生成动态链接库,不选中时编译成静态库。

    3、BUILD_TESTING  处于BUILD分组。

    选中代表编译測试代码。此处不选中,为了缩短编译时间。

    4、CMAKE_INSTALL_PREFIX 处于CMAKE分组中,指向VTK的生成路径,这里使用其默认路径C:Program Files (x86)VTK。

    5、VTK_DATA_ROOT 处于VTK分组中。VTKData.zip解压的路径。这里能够手动改动到D:Program FilesVTKData。

    6、VTK_USE_GUISUPPORT 处于VTK分组中,表示是否支持GUI。为了兴许使用MFC界面,这里勾选该选项。

    须要注意的是。在点击Config之后会出现VTK_USE_MFC选项。须要勾该选项再次进行Config。




    Config之后没有红色标记的时候就能够进行Generate了。


    4、在VS2010中编译项目


    假设前面的步骤没有问题,在VTKBin文件夹下就会生成下面文件:




    打开VTK.slnproject文件,然后打开“生成” -> "生成解决方式"。这时候项目就開始编译了,编译的时间根据电脑的性能而定,一般在半小时左右项目编译完毕。

    编译完毕之后,按下图选择。



    这时候会在我们之前选择的VTK生成文件夹下生成我们须要的lib文件,头文件,dll文件等等。

    因为默认情况下生成文件的文件夹是在C:Program Files (x86)VTK。

    能够到该文件夹下检查是否有我们想要的文件产生。兴许我们须要用到的就是这三个文件夹下的内容了。




    5、測试VTK编译结果


    在编译完毕之后,建立一个win32控制台应用程序来測试安装编译结果。

    打开vs2010,新建一个win32控制台应用程序。创建完毕之后,向项目中加入一个cpp文件。随后配置我们的项目。在菜单条中选择视图->属性管理器。




    因为眼下使用的是Debug版本号编译。所以在此我们仅仅须要去设置Debug下的配置文件。双击打开Microsoft.Cpp.win32.User。在包括文件夹中加入VTK生成文件夹下的include文件夹,这里是C:Program Files (x86)VTKincludevtk-5.10。在库文件夹中加入VTK生成文件夹下的lib文件夹。这里是C:Program Files (x86)VTKlibvtk-5.10。




    配置完毕后就能够再cpp文件里写入程序代码了。

    能够写入下面程序代码来測试程序。


    #include "vtkConeSource.h"				
    #include "vtkPolyDataMapper.h"			
    #include "vtkRenderWindow.h"			
    #include "vtkCamera.h"					
    #include "vtkActor.h"					
    #include "vtkRenderer.h"
    #include "vtkProperty.h"
    #include <stdio.h>
    
    #include "windows.h"
    
    
    int main()
    {
    	int k = 0 ;
    	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 = 0;
    	for (;i<360;++i)
    	{
    		renWin->Render();
    		ren1->GetActiveCamera()->Azimuth(1);
    		Sleep(10);
    	}
    	scanf("%d",&k);
    	cone->Delete();
    	coneMapper->Delete();
    	coneActor->Delete();
    	ren1->Delete();
    	renWin->Delete();
    	return 0;
    }
    


    这时候编译会发现有错误,那是由于找不到编译时候须要的lib文件。我们须要在此加入依赖库文件。菜单条中选择项目->属性。

    打开链接器。选择输入。




    在附加依赖项中加入程序中必要的lib文件。




    这时候再去编译程序发现没有错误了。可是执行程序的时候会跳出没有安装必要的dll文件。这是程序无法找到执行时的动态链接库导致的。

    解决的方法有两种:

    1、将VTK生成文件夹下,也就是C:Program Files (x86)VTKin文件夹下的dll文件所有复制到C:WindowsSystem32文件夹下。

    2、或者加入系统环境变量。回到计算机桌面。右键计算机。属性。选中高级系统设置。

    选中高级选项卡。




    点击环境变量,在PATH变量下加入C:Program Files (x86)VTKin。假设打开后没有PATH。能够自行加入PATH变量。假设打开后有PATH。且里面已经有内容,那么在加入的时候须要注意,每个值之间是须要使用分号 ; 隔开的。

    (这里的分号要确保是在英文状态下输入的,也就是必须要是半角的字符。)

    环境量配置完毕后一般不会马上生效,这时能够又一次启动电脑。

    依照上述配置完毕就能够执行程序了。执行结果例如以下。

















  • 相关阅读:
    白盒测试相关内容总结
    黑盒测试相关内容总结
    int.parse的出错异常处理
    逃的过初一逃不过十五之三个输入框文本内容检测的实现及测试
    EditBox问题等价类划分
    关于课堂上Exercise#1的讨论
    js中关于事件处理函数名后面是否带括号的问题
    关于提升和作用域的一道有趣的题目
    绝对定位对元素宽度的影响
    js异步函数队列
  • 原文地址:https://www.cnblogs.com/clnchanpin/p/6999564.html
Copyright © 2011-2022 走看看