PCL学习之点云显示

1、利用pcl::visualization::PCLVisualizer显示,当点云不在坐标系中心时,窗显示为空,按住Ctrl+R可以调出点云对象

    pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>); // 创建点云(指针)
    if (pcl::io::loadPCDFile<pcl::PointXYZ>("E:\\Project\\width3D3Cam\\result.pcd", *cloud) == -1) //* 读入PCD格式的文件,如果文件不存在,返回-1
    {
        PCL_ERROR("Couldn't read file test_pcd.pcd \n"); //文件不存在时,返回错误,终止程序。
        return (-1);
    }    
    boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer(new pcl::visualization::PCLVisualizer("3D Viewer"));
    viewer->setBackgroundColor(0.5, 0.5, 0.5);
    viewer->addPointCloud<pcl::PointXYZ>(cloud, "sample cloud");
    viewer->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 1, "sample cloud");
    viewer->addCoordinateSystem(1.0);

    while (!viewer->wasStopped())
    {
        viewer->spinOnce(100);
        boost::this_thread::sleep(boost::posix_time::microseconds(100000));
    }

2、利用CloudViewer也可以,但是只能显示

猜你喜欢

转载自blog.csdn.net/qq_25147107/article/details/81671416