基于pcl库输出已知点云ply文件的所有点的三维坐标的C++代码
以下是基于pcl库输出已知点云ply文件的所有点的三维坐标的C++代码示例:
#include <iostream>
#include <pcl/io/ply_io.h>
#include <pcl/point_types.h>
int main()
{
// 加载ply文件
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
pcl::io::loadPLYFile<pcl::PointXYZ>("input.ply", *cloud);
// 遍历所有点云,并输出坐标
for (size_t i = 0; i < cloud->size(); ++i)
{
pcl::PointXYZ point = cloud->at(i);
std::cout << "Point " << i << ": (" << point.x << ", " << point.y << ", " << point.z << ")" << std::endl;
}
return 0;
}
在上述代码中,我们首先使用pcl::PointCloud<pcl::PointXYZ>::Ptr定义了一个点云指针cloud,然后使用pcl::io::loadPLYFile函数加载ply文件到该点云中。接下来,使用一个循环遍历所有点云,并输出每个点的三维坐标。最后,我们返回0作为程序的退出状态码。
请注意,这里假设输入的ply文件中的点云类型为pcl::PointXYZ。如果你的ply文件中的点云类型不同,请根据实际情况进行修改
原文地址: https://www.cveoy.top/t/topic/hIDI 著作权归作者所有。请勿转载和采集!