void GmGridMapView::GetNeighbors(int node, FastVector<AStar::EdgeInfo<int,float>>& neighbors) { neighbors.clear(); neighbors.resize(8); float cost = GetCellCost(node); float step1 = 1 * cost; float stepD = SQRT_2 * cost; AddNeighbor( GetNodeDxDy(node, 1, 0) , step1, neighbors); AddNeighbor( GetNodeDxDy(node, - 1, 0) , step1, neighbors); AddNeighbor( GetNodeDxDy(node, 0, 1) , step1, neighbors); AddNeighbor( GetNodeDxDy(node, 0, -1) , step1, neighbors); AddNeighbor( GetNodeDxDy(node, 1, 1), stepD, neighbors); AddNeighbor( GetNodeDxDy(node, 1, -1), stepD, neighbors); AddNeighbor( GetNodeDxDy(node, -1, 1), stepD, neighbors); AddNeighbor( GetNodeDxDy(node, -1, -1), stepD, neighbors); }