这段代码实现了寻找路径的功能。首先,创建了一个名为yr1的PointCloud指针,类型为pcl::PointCloudpcl::PointXYZRGB,并将该指针指向clouds1[i]。然后,输出路径的编号。接下来,初始化了两个PointXYZRGB类型的引用变量point54和point56,分别指向jinqi。这样做是为了防止修改jinqi,同时将搜索的起点统一设置为茎秆的起点。然后,将point56加入到clouds1[i]中。接着,初始化了一个变量distances,用于记录路径的距离。然后,通过两层循环,找到一个叶片内不同点的循环,确保不会遗漏边。在内层循环中,遍历所有生成树的边,获取边的两个点p0和p00。如果point56与p0相同,则将p00加入到yr1中,并更新distances和point56的值。如果point56与p00相同,则将p0加入到yr1中,并更新distances和point56的值。然后,判断是否遇到叶节点,如果是,则将该边从resulta中删除,以防止下次搜索时重复遇到。最后,外层循环结束后,路径的构建完成。

解释代码		pclPointCloudpclPointXYZRGBPtr yr1 = clouds1i;		cout 路径 i + 1 所有骨架点: endl;		pclPointXYZRGB& point54 = jinqi;防止修改掉茎起点		pclPointXYZRGB& point56 = point54;将搜索的起点统一设置为茎秆的起点		clouds1i-push_backpo

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

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