这段代码的作用是计算路径的长度以及生成路径点。

首先,yr1是一个指向pcl::PointCloudpcl::PointXYZRGB类型的指针,用来存储路径点。clouds1是一个pcl::PointCloudpcl::PointXYZRGB类型的向量,yr1指向其中的一个元素。

然后,将jinqi赋值给point54和point56,这里使用引用的方式避免修改掉jinqi的值。然后将point56添加到clouds1[i]中。

接下来,通过遍历cloud100中的点,找到与point56相邻的点,并将其添加到yr1中。同时,计算路径的长度,使用euclideanDistance函数计算point56和相邻点之间的欧式距离,并将其累加到distances中。最后,将相邻点赋值给point56。

在遍历resulta中的边时,如果找到了与point56相邻的点,将其添加到yr1中,并更新point56的值。同时,在遍历jie中的点时,如果找到了与上一个点相同的点,将其在resulta中删除。

最后,循环结束后,yr1中存储了路径点,distances中存储了路径的长度。

解释代码		pclPointCloudpclPointXYZRGBPtr yr1 = clouds1i;		cout 路径 i + 1 所有骨架点: endl;		pclPointXYZRGB& point54 = jinqi;防止修改掉茎起点		pclPointXYZRGB& point56 = point54;		clouds1i-push_backpoint56;		double d

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

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