C++ c++;pcl_ros:如何生成包含最新100条消息的点云

C++ c++;pcl_ros:如何生成包含最新100条消息的点云,c++,ros,point-clouds,erase,C++,Ros,Point Clouds,Erase,我有一个rostopic,每个消息接收一个单帧(2D)点云(x,y坐标),我需要创建一个(3D)点云,连接最近的100帧(在z轴上)。其目的是始终显示由最新的100帧构成的点云,就像FIFO队列一样 我可以在z轴上使用方法连接帧 棘手的部分是在达到100帧后如何删除最旧的帧?(例如:使用z索引1删除点)我试图使用该方法,但我不知道如何传递迭代器参数。即使,如果我能做到这一点;如何将现有点云从z=1开始移动?谢谢你在这方面的帮助 由于cloud->points是一个std::vector,请参见如

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

我可以在z轴上使用方法连接帧


棘手的部分是在达到100帧后如何删除最旧的帧?(例如:使用z索引1删除点)我试图使用该方法,但我不知道如何传递迭代器参数。即使,如果我能做到这一点;如何将现有点云从z=1开始移动?谢谢你在这方面的帮助

由于
cloud->points
是一个std::vector,请参见如何传递迭代器参数的示例。

感谢您的帮助。我想我可以用它来擦除第一帧点。然而,关于我的下一个问题是如何将现有的点云从z索引向后移动1?知道如何修改现有云的z索引点吗?有没有一种简单的方法可以做到这一点,或者我应该迭代每个点并修改z索引?如果是,我应该调用什么方法来修改z点索引?我能用吗<代码>云->点。z=云->点。z-1看看你是否可以用它来翻译你的云,而不需要迭代。