"#include "iostream"\n#include "pcl/io/ply_io.h"\n#include "pcl/point_types.h"\n#include "pcl/visualization/pcl_visualizer.h"\n\nint main()\n{\n // 加载点云文件\n pcl::PointCloudpcl::PointXYZ::Ptr cloud(new pcl::PointCloudpcl::PointXYZ());\n pcl::io::loadPLYFilepcl::PointXYZ("input.ply", *cloud);\n\n // 获取第55个点和第56个点的坐标\n pcl::PointXYZ point1 = cloud->points[54];\n pcl::PointXYZ point2 = cloud->points[55];\n\n // 创建可视化窗口\n pcl::visualization::PCLVisualizer viewer("PointCloud Viewer");\n viewer.setBackgroundColor(0.0, 0.0, 0.0);\n\n // 添加点云\n viewer.addPointCloudpcl::PointXYZ(cloud, "cloud");\n\n // 添加直线连接第55个点和第56个点\n pcl::PointXYZRGB line_color(255, 0, 0); // 设置直线颜色为红色\n viewer.addLine<pcl::PointXYZ, pcl::PointXYZRGB>(point1, point2, line_color, "line");\n\n // 显示点云和直线\n while (!viewer.wasStopped())\n {\n viewer.spinOnce();\n }\n\n return 0;\n}\n"在代码中,首先通过pcl::io::loadPLYFile函数加载PLY文件,然后获取第55个点和第56个点的坐标。接下来,创建一个PCL可视化窗口,并添加点云数据和用于连接两个点的直线。最后,通过viewer.spinOnce()函数显示可视化结果,直到用户关闭窗口。请注意,需要将代码中的input.ply替换为实际的PLY文件路径。


原文地址: https://www.cveoy.top/t/topic/prI1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录