PCL点云测试程序1

程序: 

#include <pcl\visualization\pcl_visualizer.h>
#include <pcl\point_cloud.h>
#include <pcl\point_types.h>

int main() {
	//初始化点云
	pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);

	//设置点云大小
	cloud->points.resize(200);

	//填充点云
	for (size_t i = 0; i < cloud->points.size(); ++i)
	{
		cloud->points[i].x = 1024 * rand() / (RAND_MAX + 1.0f);
		cloud->points[i].y = 1024 * rand() / (RAND_MAX + 1.0f);
		cloud->points[i].z = 1024 * rand() / (RAND_MAX + 1.0f);
	}

	//声明视窗
	boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer(new pcl::visualization::PCLVisualizer("3D Viewer"));
	//设置视窗背景色
	viewer->setBackgroundColor(0, 0, 0);
	//预处理点云颜色
	pcl::visualization::PointCloudColorHandlerCustom<pcl::PointXYZ> magenta(cloud, 255, 0, 255);
	//把点云加载到视窗
	viewer->addPointCloud(cloud, magenta, "cloud");
	//设置点云大小
	viewer->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 3, "cloud");
	//显示
	viewer->spin();
}

运行GIF:

发布了34 篇原创文章 · 获赞 26 · 访问量 7608

猜你喜欢

转载自blog.csdn.net/HHT0506/article/details/104511040