繁体   English   中英

c ++ pcl_ros:如何使用最新的100条消息生成点云

[英]c++ pcl_ros: How to generate point cloud with latest 100 messages

我有一个rostopic,每个消息接收一个单帧(2D)点云(带有x,y坐标),我需要创建一个(3D)点云,将最新的100帧(在z轴上)连接在一起。 目的是始终显示由最新的 100个帧组成的点云,例如FIFO队列。

我可以使用cloud-> points.push_back(pcl :: PointXYZ(pt.x,pt.y,z))连接帧 z轴上的方法。

棘手的部分是达到100帧后如何删除最旧的帧? (例如:用z索引1删除点)我试图使用点points.erase方法(首先迭代器,最后迭代器),但是,我不知道如何传递迭代器参数。 即使,如果我能做到的话; 如何将现有点云从z = 1移到? 感谢对此的任何帮助。

由于cloud->points是std :: vector,因此有关如何传递迭代器参数的示例,请参见std :: vector :: erase

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM