def calc_final_path(self, ngoal, closedset): # 传入目标点和closed表,经过函数处理得到最终所有的xy列表 pathx, pathy = [self.calc_grid_position(ngoal.x, self.minx)], [ self.calc_grid_position(ngoal.y, self.miny)] parent_index = ngoal.parent_index while parent_index != -1: n = closedset[parent_index] pathx.append(self.calc_grid_position(n.x, self.minx)) pathy.append(self.calc_grid_position(n.y, self.miny)) parent_index = n.parent_index return pathx, pathy
时间: 2023-12-08 08:03:42 浏览: 54
rdf_CALC.zip_XRD的Calc_m.rdfxrd.loan_maple计算rdf函数_molecular dynam
这段代码看起来是 A*算法的一部分,用来计算从起点到目标点的最短路径。具体来说,它接收目标点和已经搜索过的节点的集合(也就是 closedset),然后通过向父节点回溯的方式,得到从起点到目标点的路径上所有节点的坐标。
具体来说,它首先将目标点的坐标转换为格子坐标,并将其作为最终路径的起点。然后,它不断向父节点回溯,将每个节点的坐标也添加到路径中,并更新当前节点的父节点为它的父节点,直到回溯到起点,此时整个路径的所有节点的坐标就都被记录下来了。最后,它将所有节点的坐标再次转换为真实坐标,并返回这些坐标的列表。
阅读全文