| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> Windows系统下采用Visual Studio + QT + OpenGL实现RVIZ显示平面网格、坐标系和三维激光点云等功能(四) -> 正文阅读 |
|
[开发工具]Windows系统下采用Visual Studio + QT + OpenGL实现RVIZ显示平面网格、坐标系和三维激光点云等功能(四) |
一、实现内容: 本篇文章将介绍采用Visual Studio2019 + Qt +OpenGL在Qt窗口中利用OpenGL Widget组件实现三维激光点云的显示。 二、前期基础: 本文所述内容的实现,建立在上一篇博客文章的基础上,上一篇博客的链接地址: Windows系统下采用Visual Studio + QT + OpenGL实现RVIZ显示平面网格、坐标系和三维激光点云等功能(三) 三、实现原理: 3.1、加载点云数据文件 激光点云由一系列的三维坐标点组成,常见的点云格式有pcd、ply、las等,pcd格式的点云文件需要借助PCL点云库进行读取,Windows下配置PCL点云库较为麻烦,因此可先将pcd点云文件在Ubuntu系统下转换成csv文件,然后在Qt中直接读取csv文件。本文将采用该思路进行点云数据文件的加载,其中加载点云的数据格式为(x,y,z,intensity),其它点云格式只需简单修改下也可适用,加载csv点云核心代码如下所示: csv点云文件读取:
该代码可以快速读取大量点云数据,将csv中的数据存储到c++的vector中去,最终返回一个vector数据。 3.2、OpenGL中三维点云显示 三维点云实质上就是由大量的三维坐标点组成,因此在OpenGL中显示点云只需将实际点云文件中的三维坐标点传输给OpenGL,并将OpenGL图元类型设置为GL_POINTS,便可实现三维点云的显示,实现部分代码如下所示: OpenGL中点云显示核心代码:
四、效果展示: OpenGL中点云显示效果图 五、总结: Windows系统下采用Visual Studio + QT + OpenGL实现RVIZ显示平面网格、坐标系和三维激光点云等功能系列博客到此最终完结,代码也完全开源出来,希望最终能够帮助到大家,相互学习、共同进步。 Gitee开源代码网址:https://gitee.com/wccworld/learn_qt_opengl |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 0:38:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |