""" Bus system module SPDX - License - Identifier: LGPL - 3.0 - or -later Copyright © 2021 Project Author Pilar Monsalvete Alvarez de Uribarri pilar.monsalvete@concordia.ca """ from typing import List from city_model_structure.city_object import CityObject from city_model_structure.attributes.polygon import Polygon from city_model_structure.transport.bus_network import BusNetwork from city_model_structure.transport.bus_node import BusNode from city_model_structure.transport.bus import Bus class BusSystem(CityObject): """ BusSystem(CityObject) class """ def __init__(self, name, lod, surfaces, city_lower_corner): super().__init__(name, lod, surfaces, city_lower_corner) self._bus_routes = None self._bus_network = None self._buses = None self._restricted_polygons = None @property def bus_routes(self) -> List[BusNode]: return self._bus_routes @property def bus_network(self) -> BusNetwork: return self._bus_network @property def buses(self) -> List[Bus]: return self._buses @property def restricted_polygons(self) -> List[Polygon]: return self._restricted_polygons