C++ 3D 绘图技术调研常用库介绍

C++ 3D 绘图技术调研

0. C++ 3D绘图开源库介绍

3D图形处理库介绍(带图片)

C&C++图形图像处理开源库

1. Qt 三维绘图

官方API Qt Documentation

2. Qt + OpenGL

OpenGL只处理与3D图形的绘制,基本上不提供创建用户界面的功能,所以为OpenGL应用程序创建用户界面必须使用其它的图形工其包(如Motif、MFC等)。而Qt的OpenGL模块很好的解决了这个问题,它提供了一个继承自Qwidget的OpenGL部件类QGLWidget,使得该部件类能够像Qt其它部件那样使用,还可以在绘制窗口部件时直接使用OpenGL的API接口。在Qt中为OpenGL提供支持的类主要有以下几个:

  • QGLWidget:用于渲染OpenGL场景的易于使用的Qt部件。
  • QGLColormap:用于在QGLWidget中安装用户自定义的颜色图。
  • QGLContext:封装了用于OpenGL渲染的场景。
  • QGLFormat:指定OpenGL演染场景的显示模式。
  • QGLFrameBufferObject和QGLPixelBuffer分别提供了对GL帧缓冲对象和GL像素缓冲的支持。
  • QGLPaintEngine:QPaintEngine的派生类,为QPainter提供了OpenGL绘图引擎。

基本中文教程文献 Qt OpenGL

目录下:Qt Opengl 教程

3. C++ 3D 绘图库 —— PCL 点云库

参考文献:https://zhuanlan.zhihu.com/p/268524083

简介:

点云数据的处理可以采用获得广泛应用的Point Cloud Library (点云库,PCL库)。PCL库是一个最初发布于2013年的开源C++库,目前最新的版本是2020年3月19日发布的1.10.1。它实现了大量点云相关的通用算法和高效的数据管理。支持多种操作系统平台,可在Windows、Linux、Android、Mac OS X、部分嵌入式实时系统上运行。如果说OpenCV是2D信息获取与处理的技术结晶,那么PCL在3D信息获取与处理上,就与OpenCV具有同等地位,PCL是BSD授权方式,可以免费进行商业和学术应用。

PCL包含多个模块,如滤波(filter)特征提取(features)关键点(keypoint)配准(registration)k-d树(k-d tree)八叉树(octree)分割(segmentation)抽样一致(Random sample consensus)表面重建(surface)识别(recognition)输入输出(io),**visualization(可视化)**等模块。

PCL库的在线文档链接及demo教程:PCL官方文档

PCL库中文社区:http://www.pclcn.org/

4. C++ Open3D

参考文献:https://blog.csdn.net/ZhangRelay/article/details/103226687

Open3D是一个开放源代码库,支持快速开发处理3D数据的软件。Open3D前端在C ++和Python中公开了一组精心选择的数据结构和算法。后端经过高度优化,并设置为并行化。Open3D是从一开始就开发出来的,带有很少的,经过仔细考虑的依赖项。它可以在不同的平台上设置,并且可以从源代码进行最小的编译。代码干净,样式一致,并通过清晰的代码审查机制进行维护。Open3D已用于许多已发布的研究项目中,并已积极部署在云中。我们欢迎开源社区的贡献。

核心功能

  • 基本的3D数据结构
  • 基本的3D数据处理算法
  • 基本的点云数据处理
  • 场景重建
  • 表面对齐
  • 3D可视化
  • 支持PyTorch和TensorFlow的3D机器学习
  • GPU加速的核心3D操作
  • 支持C ++和Python

基本例程:【Open3d】使用open3d可视化(可视化、动态显示点云)

open3d

官方 API: Open3D (C++ API)

资源下载

5. QT之qwtplot3d

简介

qwtplot3d是qt解决三维图形绘制的库,核心通过调用openGL库完成,可以实现三维曲面绘制,三维状态下折线,散点等图形的绘制。但是其在十多年前推出后一直没有太大的更新,而且自带的类并不够丰富,所以在使用时还是有一些问题的。主要参考了引用1中的博客,qwtplot3d库的代码在该博主的博客中可以下载到,另外在github中搜索qwtplot3d,找到标星最多的一个,但是该库有改动,另外可以在引用2中下载到官方库文件。

可能更擅长于绘制三维曲线、曲面、动态曲线等相关的图形

官方网站:Qwtplot3D

几个小例程:Qwtplot3D例程

  • 2
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值