VTK6.2编译+Qt5.5

本文介绍如何使用VTK在Qt中实现3D点云的可视化,包括VTK的下载、编译及配置过程,以及解决安装过程中遇到的问题。

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

最近在学习C++QtGUI编程,并着手制作一个3D显示点云的程序。Qt中自带的opengl有一点无法突破,便准备利用VTK实现点云可视化。http://blog.163.com/qimo601@126/blog/static/158220932013626113440944/

下载最新版的VTK

VTK下载地址:http://www.vtk.org/download/#latest
解压至:E:\CPlusPlusLib\VTK目录中的source文件夹。

下载最新版cmake并安装

cmake下载地址:https://cmake.org/download/
本人下载的是cmake-3.3.2-win32-x86.exe。

编译VTK6.2

打开cmake
选择如下图,点击configure,编译器选择visual studio 12 2013 win64(操作系统为64位)。
修改CMake的参数:
1 BUILD_SHARED_LIBS 选ON状态,可以生成动态链接库dll。后期只需要拷贝到项目中即可使用。OFF的话,会生成静态链接库lib,也可以在项目中使用。
2 Module_vtkGUISupportQt 选ON状态,支持Qt界面。
然后,再点击Configure按钮,重新让CMake扫描一下配置文件。参数列表里估计会生成很多关于Qt的信息。运行成功之后,页面上的红色将消失,若还有红色,则看看红色选项卡上还需要选中什么,再做相应修改,然后再运行Configure。


这里写图片描述

点击Generate按钮。生成VTK的VS项目。


这里写图片描述

打开VTK.sln


这里写图片描述

1、选择ALL_BUILD项目的Debug模式,build勾选,点击build按钮。

这里写图片描述

2、选择INSTALL项目的Debug模式,build勾选框。点击build按钮。


这里写图片描述
这里写图片描述
若出现如上图所示失败,和如下提示,就打开E:\CPlusPlusLib\VTK\bin中的cmake_install.cmake,并作如下修改:

# Set the install prefix
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
  set(CMAKE_INSTALL_PREFIX "E:/CPlusPlusLib/VTK")
endif()
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
------ 已启动生成:  项目: INSTALL, 配置: Release x64 ------
  -- Install configuration: "Release"
  CMake Error at cmake_install.cmake:31 (file):
    file cannot create directory: C:/Program Files/VTK/lib/cmake/vtk-6.2.
    Maybe need administrative privileges.


C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: 命令“setlocal
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: "E:\Program Files (x86)\CMake\bin\cmake.exe" -DBUILD_TYPE=Release -P cmake_install.cmake
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :cmEnd
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :cmErrorLevel
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: exit /b %1
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :cmDone
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\Microsoft.CppCommon.targets(132,5): error MSB3073: :VCEnd”已退出,代码为 1。
========== 生成:  成功 9 个,失败 1 个,最新 111 个,跳过 0 个 ==========
Qt设计师中多出QVTKWidget部件

将E:\CPlusPlusLib\VTK\bin\lib\Release目录中的QVTKWidgetPlugin.dll和QVTKWidgetPlugin.lib拷贝到C:\Qt\Qt5.5.0\5.5\msvc2013_64\plugins\designer目录下,即可在QtDesigner中看到VTK的插件。


这里写图片描述

### 集成VTK、PCL和Qt的示例教程 #### 环境搭建概述 为了在Visual Studio 2019中配置并使用PCL(Point Cloud Library)、VTK(Visualization Toolkit)以及Qt框架,开发人员需遵循一系列特定步骤以确保这三个库能够协同工作。这不仅涉及安装必要的依赖项,还包括设置编译器选项和路径变量等细节[^1]。 #### 下载资源包 可以从指定的GitCode仓库获取一个综合性的资源集合,该集合包含了详细的文档指导用户如何在Qt环境下操作PCL与VTK,从而实现点云及三维模型的有效展示与互动功能[^2]。 #### 关键配置参数 当准备构建环境时,应特别关注几个重要的CMake变量设定,比如`VTK_Group_Qt`, `VTK_QT_VERSION`, 和`Qt5_DIR`等,这些都将直接影响最终项目的兼容性和性能表现[^4]。 #### 实际应用案例分析 具体来说,在实际项目实践中,可以通过定义合适的CMakeLists文件来管理源码结构,并借助于QVTKOpenGLNativeWidget组件作为桥梁连接起Qt界面层同底层图形渲染引擎之间的通信渠道,进而达到高效呈现复杂几何形状的目的[^5]。 ```cpp // CMakeLists.txt 示例片段 find_package(VTK REQUIRED COMPONENTS vtkRenderingQt) include(${VTK_USE_FILE}) add_executable(PointCloudViewer main.cpp) target_link_libraries(PointCloudViewer PRIVATE ${VTK_LIBRARIES}) ``` ```cpp // main.cpp 示例代码 #include <vtkNew.h> #include <vtkRenderWindowInteractor.h> #include <vtkSmartPointer.h> #include <QApplication> #include "ui_MainWindow.h" int main(int argc, char *argv[]) { QApplication app(argc, argv); MainWindow w; w.show(); return app.exec(); } ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值