diff options
Diffstat (limited to 'tools/python')
-rw-r--r-- | tools/python/transit/transit_color_palette.py | 14 | ||||
-rwxr-xr-x | tools/python/transit/transit_graph_generator.py | 17 |
2 files changed, 18 insertions, 13 deletions
diff --git a/tools/python/transit/transit_color_palette.py b/tools/python/transit/transit_color_palette.py index a107a064c4..a395e51f75 100644 --- a/tools/python/transit/transit_color_palette.py +++ b/tools/python/transit/transit_color_palette.py @@ -7,18 +7,17 @@ def to_rgb(color_str): return (r, g, b) -def to_rgba(rgb): - return rgb[0] << 24 | rgb[1] << 16 | rgb[2] << 8 | 255 - - class Palette: def __init__(self, colors): self.colors = [] for color in colors['colors']: - color_info = {'clear': to_rgb(color['clear']), - 'night': to_rgb(color['night'])} + color_info = {'name': color['name'], + 'clear': to_rgb(color['clear'])} self.colors.append(color_info) + def get_default_color(self): + return self.colors[0]['name'] + def get_nearest_color(self, color_str): """Returns the nearest color from the palette.""" nearest_color_info = None @@ -32,5 +31,4 @@ class Palette: if min_diff is None or diff < min_diff: min_diff = diff nearest_color_info = color_info - return {'clear': to_rgba(nearest_color_info['clear']), - 'night': to_rgba(nearest_color_info['night'])} + return nearest_color_info['name'] diff --git a/tools/python/transit/transit_graph_generator.py b/tools/python/transit/transit_graph_generator.py index 491e55e4e1..310564a990 100755 --- a/tools/python/transit/transit_graph_generator.py +++ b/tools/python/transit/transit_graph_generator.py @@ -168,19 +168,26 @@ class TransitGraphBuilder: 'network_id': network_id, 'title': line_name, 'number': route_item['ref'], - 'stop_ids': line_stops} + 'interval': line_item['interval'], + 'stop_ids': []} if 'colour' in route_item: line['color'] = self.palette.get_nearest_color(route_item['colour']) + else: + line['color'] = self.palette.get_default_color() # TODO: Add processing of line_item['shape'] when this data will be available. # TODO: Add processing of line_item['trip_ids'] when this data will be available. # Create an edge for each connection of stops. for i in range(len(line_stops)): - self.stops[line_stops[i]]['line_ids'].append(line_id) - if i < len(line_stops) - 1: - edge = {'stop1_id': line_stops[i], - 'stop2_id': line_stops[i + 1], + stop1 = line_stops[i] + line['stop_ids'].append(stop1[0]) + self.stops[stop1[0]]['line_ids'].append(line_id) + if i + 1 < len(line_stops): + stop2 = line_stops[i + 1] + edge = {'stop1_id': stop1[0], + 'stop2_id': stop2[0], + 'weight': stop2[1] - stop1[1], 'transfer': False, 'line_id': line_id, 'shape_ids': []} |