From 264866ed52f958692f95b9c1e642d4444e19aaf8 Mon Sep 17 00:00:00 2001 From: MLErik <baerenjesus@gmail.com> Date: Tue, 1 Oct 2019 08:38:18 -0400 Subject: [PATCH] fixed None warning --- flatland/envs/rail_generators.py | 54 ++++++++++++++------------------ 1 file changed, 24 insertions(+), 30 deletions(-) diff --git a/flatland/envs/rail_generators.py b/flatland/envs/rail_generators.py index 005faa01..8880d27b 100644 --- a/flatland/envs/rail_generators.py +++ b/flatland/envs/rail_generators.py @@ -756,36 +756,30 @@ def sparse_rail_generator(num_cities=5, grid_mode=False, max_inter_city_rails=4, # If no closest neighbour was found look at the neighbouring connections tmp_direction = (direction - 1) % 4 - filtered_neighbours = list(filter(None, neighbours)) - if len(filtered_neighbours) > 0: - while neighb_idx is None: - neighb_idx = filtered_neighbours[tmp_direction % len(filtered_neighbours)] - tmp_direction = (direction + 1) % 4 - - connected_to_city.append(neighb_idx) - for tmp_out_connection_point in connection_points[current_node][direction]: - # Find closest connection point - min_connection_dist = np.inf - for dir in range(4): - current_points = connection_points[neighb_idx][dir] - for tmp_in_connection_point in current_points: - tmp_dist = distance_on_rail(tmp_out_connection_point, tmp_in_connection_point, - metric="Manhattan") - if tmp_dist < min_connection_dist: - min_connection_dist = tmp_dist - neighb_connection_point = tmp_in_connection_point - neighbour_direction = dir - new_line = connect_cities(rail_trans, grid_map, tmp_out_connection_point, - neighb_connection_point, - city_cells) - G.add_edge(current_node, neighb_idx, direction=direction, length=len(new_line)) - G.add_edge(neighb_idx, current_node, direction=neighbour_direction, length=len(new_line)) - - all_paths.extend(new_line) - - else: - # TODO why can this happen? - warnings.warn("all neighbours are NONE!") + while neighb_idx is None: + neighb_idx = neighbours[tmp_direction] + tmp_direction = (direction + 1) % 4 + + connected_to_city.append(neighb_idx) + for tmp_out_connection_point in connection_points[current_node][direction]: + # Find closest connection point + min_connection_dist = np.inf + for dir in range(4): + current_points = connection_points[neighb_idx][dir] + for tmp_in_connection_point in current_points: + tmp_dist = distance_on_rail(tmp_out_connection_point, tmp_in_connection_point, + metric="Manhattan") + if tmp_dist < min_connection_dist: + min_connection_dist = tmp_dist + neighb_connection_point = tmp_in_connection_point + neighbour_direction = dir + new_line = connect_cities(rail_trans, grid_map, tmp_out_connection_point, + neighb_connection_point, + city_cells) + G.add_edge(current_node, neighb_idx, direction=direction, length=len(new_line)) + G.add_edge(neighb_idx, current_node, direction=neighbour_direction, length=len(new_line)) + + all_paths.extend(new_line) direction += 1 -- GitLab