《PCL点云库学习&VS2010(X64)》Part 29 PCL使用类成员函数作为pclvisualizer的回调函数
来源:互联网 发布:ubuntu 目录大小 编辑:程序博客网 时间:2024/05/21 03:59
《PCL点云库学习&VS2010(X64)》Part 29 PCL使用类成员函数作为pclvisualizer的回调函数
参考资料1
参考资料2
代码:
#include <pcl/point_types.h>#include <pcl/point_cloud.h>#include <pcl/point_representation.h>#include <pcl/visualization/pcl_visualizer.h>using namespace pcl; class dummyClass{ public: dummyClass(); ~dummyClass(){}; void keyboardEventOccurred (const visualization::KeyboardEvent &event, void* junk); pcl::PointXYZ randomPoint(); void spin(); private: boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer; pcl::PointCloud<pcl::PointXYZ>::Ptr pc; }; dummyClass::dummyClass(){ // Create viewer viewer.reset(new pcl::visualization::PCLVisualizer ("3D Viewer")); viewer->addCoordinateSystem(1); viewer->addText("Press r to add a random point", 30, 10, 15, 1.0f,0.0f,0.0f,"text"); // Create cloud pc.reset(new pcl::PointCloud<pcl::PointXYZ>()); pc->push_back(randomPoint()); viewer->addPointCloud(pc,"cloud"); viewer->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 5,"cloud"); // Register Keyboard Event viewer->registerKeyboardCallback(&dummyClass::keyboardEventOccurred,*this); }; void dummyClass::keyboardEventOccurred (const visualization::KeyboardEvent &event, void* junk){ if (event.getKeySym() == "r" && event.keyDown()){ pc->push_back(randomPoint()); viewer->updatePointCloud(pc,"cloud"); } }; pcl::PointXYZ dummyClass::randomPoint(){ pcl::PointXYZ pt; pt.x = (double)rand() / RAND_MAX *10 - 5; pt.y = (double)rand() / RAND_MAX *10 - 5; pt.z = (double)rand() / RAND_MAX *10 - 5; return pt; }; void dummyClass::spin(){ viewer->spin(); }; int main (int argc, char** argv) { dummyClass dc; dc.spin(); return 0; }
0 0
- 《PCL点云库学习&VS2010(X64)》Part 29 PCL使用类成员函数作为pclvisualizer的回调函数
- PCL使用类成员函数作为pclvisualizer的回调函数
- 《PCL点云库学习&VS2010(X64)》Part 25 PCL点云操作函数汇集
- 《PCL点云库学习&VS2010(X64)》Part 39 批处理命令设置PCL的环境变量
- 《PCL点云库学习&VS2010(X64)》Part 31 pcl::PointCloud::Ptr和pcl::PointCloud相互转换
- 《PCL点云库学习&VS2010(X64)》Part 1 Installation of PCL in VS2010(x64)
- 《PCL点云库学习&VS2010(X64)》Part 28 BoundingBox&addArray
- 《PCL点云库学习&VS2010(X64)》Part 42 OCtreeViewer
- 《PCL点云库学习&VS2010(X64)》Part 4 MFC+VTK+VS2010 测试VTK的MFC对话框程序
- 《PCL点云库学习&VS2010(X64)》Part 44 EuclideanClusterExtraction函数相关库链接错误
- 《PCL点云库学习&VS2010(X64)》Part 2 A simple test of PCL in MFC
- 《PCL点云库学习&VS2010(X64)》Part 7 PCL双边滤波BilateralFilter
- 《PCL点云库学习&VS2010(X64)》Part 19 PCL1.72(VTK6.2.0)PCL程序计时
- 《PCL点云库学习&VS2010(X64)》Part 20 PCL1.72(VTK6.2.0)PCL控制台程序线程
- 《PCL点云库学习&VS2010(X64)》Part 26 PCL中的fromPCLPointCloud2与toPCLPointCloud2
- 《PCL点云库学习&VS2010(X64)》Part 27 PCL中的区域增长之—Region_Growing算法
- 《PCL点云库学习&VS2010(X64)》Part 32 计算点云中点的索引
- 《PCL点云库学习&VS2010(X64)》Part 41 图形学领域的关键算法及源码链接
- RAM、SRAM、DRAM、SDRAM、DDRSDRAM等之间的区别
- openstack存储基础:Linux LVM硬盘管理及LVM扩容
- Robot Framework自动化测试-初探
- java中的接口
- C++最小二乘法拟合-(线性拟合和多项式拟合)
- 《PCL点云库学习&VS2010(X64)》Part 29 PCL使用类成员函数作为pclvisualizer的回调函数
- WebView加载超长图
- java中的集合List,Set,Map小总结
- MFC:error MSB8008: 指定的平台工具集(v141)未安装或无效。请确保选择受支持的 PlatformToolset 值
- 每天一个Linux命令(52):traceroute
- codeforces 677C Vanya and Label
- STL — 仿函数的实现原理和应用
- 获取src下文件路径(本地+服务器)
- hadoop datanode 无法启动