点云相加的c++代码
下面是一个简单的C++代码示例,用于将两个点云相加:
#include <iostream>
#include <vector>
struct Point {
float x;
float y;
float z;
};
std::vector<Point> addPointClouds(const std::vector<Point>& cloud1, const std::vector<Point>& cloud2) {
std::vector<Point> result;
// 将第一个点云的点添加到结果中
for (const auto& point : cloud1) {
result.push_back(point);
}
// 将第二个点云的点添加到结果中
for (const auto& point : cloud2) {
result.push_back(point);
}
return result;
}
int main() {
// 创建两个点云
std::vector<Point> cloud1 = {{1.0f, 2.0f, 3.0f}, {4.0f, 5.0f, 6.0f}};
std::vector<Point> cloud2 = {{7.0f, 8.0f, 9.0f}, {10.0f, 11.0f, 12.0f}};
// 将两个点云相加
std::vector<Point> result = addPointClouds(cloud1, cloud2);
// 打印结果点云
for (const auto& point : result) {
std::cout << "Point: (" << point.x << ", " << point.y << ", " << point.z << ")" << std::endl;
}
return 0;
}
这个代码示例定义了一个Point结构体,用于表示一个三维点的坐标。addPointClouds函数接受两个点云作为参数,并返回一个包含两个点云中所有点的新点云。main函数创建了两个点云,然后调用addPointClouds函数将它们相加,并打印结果点云的坐标。
原文地址: https://www.cveoy.top/t/topic/hWeQ 著作权归作者所有。请勿转载和采集!