函数savePointCloudsToTxt实现
#include <fstream>
void savePointCloudsToTxt(
const vector<pcl::PointCloud<pcl::PointXYZRGB>::Ptr>& hulls_k_pair_first,
const vector<pcl::PointCloud<pcl::PointXYZRGB>::Ptr>& hulls_k_pair_second,
const vector<pcl::PointCloud<pcl::PointXYZRGB>::Ptr>& hulls_underk_pair_first,
const vector<pcl::PointCloud<pcl::PointXYZRGB>::Ptr>& hulls_underk_pair_second) {
auto savePointCloudToTxt = [](const vector<pcl::PointCloud<pcl::PointXYZRGB>::Ptr>& clouds, const std::string& filename) {
std::ofstream file(filename);
for (const auto& cloud : clouds) {
if (cloud) {
for (const auto& point : cloud->points) {
file << point.x << " " << point.y << "\n";
}
file << "\n";
}
}
file.close();
};
// Saving point clouds to txt files
savePointCloudToTxt(hulls_k_pair_first, "/home/fairlee/hulls_k_pair_first.txt");
savePointCloudToTxt(hulls_k_pair_second, "/home/fairlee/hulls_k_pair_second.txt");
savePointCloudToTxt(hulls_underk_pair_first, "/home/fairlee/hulls_underk_pair_first.txt");
savePointCloudToTxt(hulls_underk_pair_second, "/home/fairlee/hulls_underk_pair_second.txt");
}
调用函数
savePointCloudsToTxt(hulls_k_pair_first, hulls_k_pair_second, hulls_underk_pair_first, hulls_underk_pair_second);
说明:可以根据输出的不同,来调整保存的变量。