Sumo Simulation Backends
sumocr
supports different, so called, sumocr.interface.sumo_simulation_backend.SumoSimulationBackend
. Those backends can be used to work with different
Headless Sumo Simulation backend
By utilizing sumocr.interface.sumo_simulation_backend.HeadlessSumoSimulationBackend
one can run headless simulations. To maximize performane this internally uses libsumo
.
from sumocr.helpers import get_sumo_binary_path
from sumocr.interface.sumo_simulation_backend import HeadlessSumoSimulationBackend
sumo_sim_backend = HeadlessSumoSimulationBackend(
config, wrapper.sumo_cfg_file, get_sumo_binary_path()
)
sumo_sim = SumoSimulation(sumo_sim_backend)
sumo_sim.initialize(config, wrapper)
GUI Sumo Simulation backend
By utilizing sumocr.interface.sumo_simulation_backend.GuiSumoSimulationBackend
one can run simulations with the sumo GUI. This uses traci
internally.
from sumocr.helpers import get_sumo_gui_binary_path
from sumocr.interface.sumo_simulation_backend import GuiSumoSimulationBackend
sumo_sim_backend = GuiSumoSimulationBackend(
config, wrapper.sumo_cfg_file, get_sumo_gui_binary_path()
)
sumo_sim = SumoSimulation(sumo_sim_backend)
sumo_sim.initialize(config, wrapper)