天天看点

PCL显示点云[微记]

PCL中的点云显示[微记]

没什么说的,直接上代码

1.C++内部调用exe显示点云,简洁方便,但是以弹窗的形式

#include <windows.h>
    system("C:");
    system("cd Program Files\\PCL 1.7.2\\bin");
    system("pcl_viewer_debug.exe test1.pcd");
           

2.真实的调用代码

#include <pcl/visualization/cloud_viewer.h>
   pcl::PointCloud<pcl::PointXYZRGB>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);  
   pcl::PCDReader reader; 
    if (pcl::io::loadPCDFile("D:\\desktop_tempfile\\pcd\\apple_0.pcd", *cloud)) 
    {  
        PCL_ERROR ("Couldn't read file pcd \n");  
        return (false);  
    } 
   pcl::visualization::CloudViewer viewer ("Simple Cloud Viewer");  
   viewer.showCloud (cloud);  
   while (!viewer.wasStopped ());
           

3.视角自动调整[显示更佳]

#include <pcl/visualization/pcl_visualizer.h>
    pcl::visualization::PCLVisualizer viewer ("cloud example");
    pcl::visualization::PointCloudColorHandlerCustom<pcl::PointXYZ> source_cloud_color_handler (cloud, , , );
    viewer.addPointCloud (cloud, source_cloud_color_handler, "cloud example");
    viewer.addCoordinateSystem (, ); 
    viewer.setBackgroundColor(, , , ); 
    viewer.setPointCloudRenderingProperties (pcl::visualization::PCL_VISUALIZER_POINT_SIZE, , "cloud example");
    while (!viewer.wasStopped ()) { 
        viewer.spinOnce ();
    }
           

继续阅读