pcl::PointCloud<pcl::PointXYZ>和pcl::PointCloud<pcl::PointXYZ>::Ptr 转换及新建点云显示

server/2024/12/14 10:13:59/

请添加图片描述

点云智能指针格式和非指针格式的转换

pcl::PointCloud<PointT>::Ptr cloud_ptr(new pcl::PointCloud<PointT>);
pcl::PointCloud<PointT> cloud;
cloud = *cloud_ptr;
cloud_ptr = boost::make_shared<pcl::PointCloud<PointT>>(cloud);

全部代码:


#include <pcl/visualization/cloud_viewer.h>
#include <iostream>
#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>//pcd 读写类相关的头文件。
#include <pcl/io/ply_io.h>
#include <pcl/point_types.h>//PCL中支持的点类型头文件。using std::cout;int user_data;// 创建一个点云
pcl::PointCloud<pcl::PointXYZ> createFirstCloud()
{pcl::PointCloud<pcl::PointXYZ> cloud;cloud.width = 10000;cloud.height = 1;cloud.is_dense = false;cloud.points.resize(cloud.width * cloud.height);// 创建一个在0-1024 之间的正方体点云for (size_t i = 0; i < cloud.size(); i++){cloud.points[i].x = 1024 * (rand() / (RAND_MAX + 1.0f));cloud.points[i].y = 1024 * (rand() / (RAND_MAX + 1.0f));cloud.points[i].z = 1024 * (rand() / (RAND_MAX + 1.0f));}return cloud;
}
int main()
{pcl::PointCloud<pcl::PointXYZ> cloud=createFirstCloud();pcl::PointCloud<pcl::PointXYZ> ::Ptr cloud_ptr(new pcl::PointCloud<pcl::PointXYZ>);*cloud_ptr = cloud;boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer(new pcl::visualization::PCLVisualizer("show my pountcloud "));viewer->setBackgroundColor(0, 0, 0);viewer->addPointCloud<pcl::PointXYZ>(cloud_ptr, "sample cloud");// 显示while (!viewer->wasStopped()){viewer->spinOnce(100);}return 0;
}

http://www.ppmy.cn/server/150061.html

相关文章

电商数据API接口:安全与性能的双重挑战

随着电子商务的蓬勃发展&#xff0c;电商平台与外部服务、内部系统之间的数据交换和通信变得日益频繁。API&#xff08;应用程序编程接口&#xff09;接口作为这一过程中的关键枢纽&#xff0c;其安全性和性能表现对于电商平台的稳定运行和用户体验至关重要。然而&#xff0c;电…

期末复习-计算机网络

目录 第四章&#xff1a;网络层 1. 虚电路服务和数据报服务的对比 2. 分类的 IP 地址 3. IP 地址与硬件地址&#xff0c;地址解析协议 ARP 4. IP 数据报的格式 5. IP 层转发分组的流程 6. 划分子网&#xff08;子网掩码、划分子网、使用子网时分组的转发&#xff09; …

阿里云数据库MongoDB版助力极致游戏高效开发

客户简介 成立于2010年的厦门极致互动网络技术股份有限公司&#xff08;以下简称“公司”或“极致游戏”&#xff09;&#xff0c;是一家集网络游戏产品研发与运营为一体的重点软件企业&#xff0c;公司专注于面向全球用户的网络游戏研发与运营。在整个产业链中&#xff0c;公…

多媒体文件解复用(Demuxing)过程

多媒体文件的解复用&#xff08;Demuxing&#xff09;过程指的是从一个多媒体容器文件&#xff08;如 MP4、MKV、AVI 等&#xff09;中提取不同类型的多媒体数据流&#xff08;例如视频流、音频流、字幕流等&#xff09;的过程。 容器文件本身并不包含实际的视频或音频数据&…

微服务-01【续】

1.OpenFeign 上篇文章我们利用Nacos实现了服务的治理&#xff0c;利用利用RestTemplate实现了服务的远程调用。但是远程调用的代码太复杂了&#xff1a; 而且这种调用方式&#xff0c;与原本的本地方法调用差异太大&#xff0c;编程时的体验也不统一&#xff0c;一会儿远程调用…

面试题-RabbitMQ如何保证消息不被重复消费?

RabbitMQ本身并不直接提供防止消息重复消费的机制&#xff0c;但可以通过一系列的策略和措施来尽量避免或处理消息的重复消费。以下是一些常用的方法&#xff1a; 一、消息确认机制 1、自动确认模式&#xff1a;在这种模式下&#xff0c;当消费者接收到消息后&#xff0c;Rab…

tomcat 架构详解

Tomcat是一个开源的Java Servlet容器&#xff0c;用于部署Java Web应用程序。它实现了Java Servlet和JavaServer Pages&#xff08;JSP&#xff09;技术规范&#xff0c;提供了Web请求处理和动态页面生成的能力。以下是对Tomcat架构的详细解析&#xff1a; Tomcat的核心组件 …

Pyside6 --Qt设计师--简单了解各个控件的作用之:Item Views

目录 一、List View二、Tree View三、Table View四、Column View 一、List View 学习方法和Buttons一样&#xff0c;大家自己在qt设计师上面在属性编辑区进行相应的学习&#xff01; 我就先紧着qt设计师的页面进行讲解&#xff0c;部分内容查自AI。 后面有什么好用的控件或者…