win7系统+Qt Creator配置VTK

本文详细介绍如何在Qt Creator环境中集成VTK库实现三维图形渲染。步骤包括VTK的下载与编译、Qt项目的配置及环境变量设置,通过示例展示如何使用VTK绘制三维圆柱体。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一步:下载、编译、安装VTK库,主要参考下面的博客:

https://blog.youkuaiyun.com/jepco1/article/details/80628026

第二步 :建立Qt Creator工程,在.pro文件中配置vtk 的include和lib库,如下

INCLUDEPATH +=$$quote(C:\Program Files\VTK\include\vtk-8.1)
LIBS +=$$quote(D:/VTK/VTK-8.1.0/build/lib/Debug/vtk*.lib)

其中INCLUDEPATH中添加VTK的头文件(在编译好的文件中的include目录下或者安装vtk的目录的include下选一个就行),LIBS中添加.lib文件(在编译生成的目录下,要区分release和debug版本)

至于.dll文件,是在编译生成VTK后,将生成后的(不是INSTALL)bin下的debug下dll目录添加到环境变量中,并重启电脑

第三部:在main.cpp的所有include命令前添加如下:

#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
然后添加例子需要的头文件:
#include<vtkSmartPointer.h>
#include<vtkRenderWindow.h>
#include<vtkRenderer.h>
#include<vtkRenderWindowInteractor.h>
#include<vtkInteractorStyleTrackballCamera.h>
#include<vtkCylinderSource.h>
#include<vtkPolyDataMapper.h>
#include<vtkActor.h>

在main函数中添加如下显示圆柱体的代码即可:

    vtkSmartPointer<vtkCylinderSource> cylinder=
            vtkSmartPointer<vtkCylinderSource>::New();
    cylinder->SetHeight(3.0);
    cylinder->SetRadius(1.0);
    cylinder->SetResolution(10);

    vtkSmartPointer<vtkPolyDataMapper> cylinderMapper=
            vtkSmartPointer<vtkPolyDataMapper>::New();
    cylinderMapper->SetInputConnection(cylinder->GetOutputPort());

    vtkSmartPointer<vtkActor> cylinderActor=
            vtkSmartPointer<vtkActor>::New();
    cylinderActor->SetMapper(cylinderMapper);

    vtkSmartPointer<vtkRenderer> renderer=
            vtkSmartPointer<vtkRenderer>::New();
    renderer->AddActor(cylinderActor);
    renderer->SetBackground(0.1,0.2,0.4);

    vtkSmartPointer<vtkRenderWindow> renWin=
            vtkSmartPointer<vtkRenderWindow>::New();
    renWin->AddRenderer(renderer);
    renWin->SetSize(300,300);

    vtkSmartPointer<vtkRenderWindowInteractor> iren=
            vtkSmartPointer<vtkRenderWindowInteractor>::New();
    iren->SetRenderWindow(renWin);

    vtkSmartPointer<vtkInteractorStyleTrackballCamera> style=
            vtkSmartPointer<vtkInteractorStyleTrackballCamera>::New();
    iren->SetInteractorStyle(style);

    iren->Initialize();
    iren->Start();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值