Path: blob/main/tests/complex/traci/bugs/ticket2804/runner.py
169689 views
#!/usr/bin/env python1# -*- coding: utf-8 -*-2# Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo3# Copyright (C) 2008-2025 German Aerospace Center (DLR) and others.4# This program and the accompanying materials are made available under the5# terms of the Eclipse Public License 2.0 which is available at6# https://www.eclipse.org/legal/epl-2.0/7# This Source Code may also be made available under the following Secondary8# Licenses when the conditions for such availability set forth in the Eclipse9# Public License 2.0 are satisfied: GNU General Public License, version 210# or later which is available at11# https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html12# SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later1314# @file runner.py15# @author Jakob Erdmann16# @date 2017-01-23171819from __future__ import print_function20from __future__ import absolute_import21import os22import sys2324if 'SUMO_HOME' in os.environ:25sys.path.append(os.path.join(os.environ["SUMO_HOME"], "tools"))26import traci # noqa27import sumolib # noqa282930def check(vehID, steps=1):31for i in range(steps):32if i > 0:33traci.simulationStep()34try:35print("%s vehicle %s on lane=%s pos=%s speed=%s" % (36traci.simulation.getCurrentTime() / 1000.0,37vehID,38traci.vehicle.getLaneID(vehID),39traci.vehicle.getLanePosition(vehID),40traci.vehicle.getSpeed(vehID)))41except traci.TraCIException:42pass43if steps > 1:44print()454647traci.start([sumolib.checkBinary('sumo'), "-c", "sumo.sumocfg",48'--fcd-output', 'fcd.xml',49'--fcd-output.signals'])50vehID = "v0"51traci.simulationStep()52traci.route.add("beg", ["beg"])53traci.vehicle.addLegacy(vehID, "beg")54traci.vehicle.setSpeed(vehID, 0)55for i in range(3):56traci.simulationStep()57traci.vehicle.setSignals(vehID, 2048)58for i in range(3):59traci.simulationStep()60traci.vehicle.setSignals(vehID, -1)61for i in range(4):62traci.simulationStep()63traci.close()646566