基于pcl库将点p与点云文件ply内的点进行比较若相同则停止比较的C++代码
以下是基于pcl库的C++代码,用于将点p与点云文件ply内的点进行比较,若相同则停止比较:
#include <iostream>
#include <pcl/io/ply_io.h>
#include <pcl/point_types.h>
int main()
{
// 定义需要比较的点p的坐标
pcl::PointXYZ p;
p.x = 1.0;
p.y = 2.0;
p.z = 3.0;
// 加载点云文件
pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);
pcl::io::loadPLYFile<pcl::PointXYZ>("point_cloud.ply", *cloud);
// 遍历点云文件内的点,与点p进行比较
for (const auto& point : cloud->points)
{
if (point.x == p.x && point.y == p.y && point.z == p.z)
{
std::cout << "点p与点云文件内的点相同" << std::endl;
return 0; // 停止比较
}
}
std::cout << "点p与点云文件内的点不相同" << std::endl;
return 0;
}
请确保将代码中的point_cloud.ply替换为您实际的点云文件路径,并根据需要修改点p的坐标
原文地址: https://www.cveoy.top/t/topic/hQM1 著作权归作者所有。请勿转载和采集!