graph类实现了一张图,用于在A*寻路算法中进行路径搜索。
构造一个新的graph对象。
将新的节点添加到图中。
将新的边添加到图中。
获取节点的所有相邻节点,并返回它们及与当前节点的距离。
获取从起点节点到终点节点的距离。
const nodes = [
{ id: 'A', x: 0, y: 0 },
{ id: 'B', x: 1, y: 0 },
{ id: 'C', x: 2, y: 0 },
{ id: 'D', x: 2, y: 1 },
{ id: 'E', x: 2, y: 2 },
{ id: 'F', x: 1, y: 2 },
{ id: 'G', x: 0, y: 2 }
];
const edges = [
{ from: 'A', to: 'B', cost: 1 },
{ from: 'B', to: 'C', cost: 2 },
{ from: 'C', to: 'D', cost: 3 },
{ from: 'D', to: 'E', cost: 4 },
{ from: 'E', to: 'F', cost: 5 },
{ from: 'F', to: 'G', cost: 6 },
{ from: 'G', to: 'A', cost: 7 }
];
const graph = new Graph(nodes, edges);
const path = astar.search(graph, 'A', 'E');