Show flights and trains in different colours
This commit is contained in:
parent
4b62ec96dc
commit
4e719a07ab
|
@ -126,7 +126,8 @@ coordinates.forEach(function(item) {
|
||||||
|
|
||||||
// Draw lines for routes
|
// Draw lines for routes
|
||||||
routes.forEach(function(route) {
|
routes.forEach(function(route) {
|
||||||
L.polyline(route, {color: 'blue'}).addTo(map);
|
var color = route[0] === "train" ? "green" : "red"; // Green for trains, red for flights
|
||||||
|
L.polyline([route[1], route[2]], {color: color}).addTo(map);
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -303,20 +303,22 @@ def latlon_tuple(stop: StrDict) -> tuple[float, float]:
|
||||||
|
|
||||||
def get_trip_routes(
|
def get_trip_routes(
|
||||||
trip: Trip,
|
trip: Trip,
|
||||||
) -> list[tuple[tuple[float, float], tuple[float, float]]]:
|
) -> list[tuple[str, tuple[float, float], tuple[float, float]]]:
|
||||||
routes = []
|
routes = []
|
||||||
for t in trip.travel:
|
for t in trip.travel:
|
||||||
if t["type"] == "flight":
|
if t["type"] == "flight":
|
||||||
if "from_airport" not in t or "to_airport" not in t:
|
if "from_airport" not in t or "to_airport" not in t:
|
||||||
continue
|
continue
|
||||||
fly_from, fly_to = t["from_airport"], t["to_airport"]
|
fly_from, fly_to = t["from_airport"], t["to_airport"]
|
||||||
routes.append((latlon_tuple(fly_from), latlon_tuple(fly_to)))
|
routes.append(("flight", latlon_tuple(fly_from), latlon_tuple(fly_to)))
|
||||||
|
|
||||||
else:
|
else:
|
||||||
assert t["type"] == "train"
|
assert t["type"] == "train"
|
||||||
for leg in t["legs"]:
|
for leg in t["legs"]:
|
||||||
train_from, train_to = leg["from_station"], leg["to_station"]
|
train_from, train_to = leg["from_station"], leg["to_station"]
|
||||||
routes.append((latlon_tuple(train_from), latlon_tuple(train_to)))
|
routes.append(
|
||||||
|
("train", latlon_tuple(train_from), latlon_tuple(train_to))
|
||||||
|
)
|
||||||
|
|
||||||
return routes
|
return routes
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue