Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
eclipse
GitHub Repository: eclipse/sumo
Path: blob/main/tests/complex/traci/person/moveToXY/matchThreshold/runner.py
169776 views
1
#!/usr/bin/env python
2
# -*- coding: utf-8 -*-
3
# Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
4
# Copyright (C) 2008-2025 German Aerospace Center (DLR) and others.
5
# This program and the accompanying materials are made available under the
6
# terms of the Eclipse Public License 2.0 which is available at
7
# https://www.eclipse.org/legal/epl-2.0/
8
# This Source Code may also be made available under the following Secondary
9
# Licenses when the conditions for such availability set forth in the Eclipse
10
# Public License 2.0 are satisfied: GNU General Public License, version 2
11
# or later which is available at
12
# https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
13
# SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
14
15
# @file runner.py
16
# @author Jakob Erdmann
17
# @date 2015-02-06
18
19
20
from __future__ import print_function
21
from __future__ import absolute_import
22
import os
23
import sys
24
if "SUMO_HOME" in os.environ:
25
sys.path.append(os.path.join(os.environ['SUMO_HOME'], 'tools'))
26
import traci # noqa
27
import sumolib # noqa
28
29
sumoBinary = sumolib.checkBinary('sumo')
30
cmd = [
31
sumoBinary,
32
"-n", "input_net3.net.xml",
33
"-r", "input_routes.rou.xml",
34
"--fcd-output", "fcd.xml",
35
"--no-step-log"]
36
traci.start(cmd)
37
38
39
def step():
40
s = traci.simulation.getTime()
41
traci.simulationStep()
42
return s
43
44
45
p = "p0"
46
s = step()
47
x, y = traci.person.getPosition(p)
48
print("s=%s x=%s y=%s lane=%s" % (s, x, y, traci.person.getLaneID(p)))
49
traci.person.moveToXY(p, "", x + 25, y, keepRoute=1)
50
s = step()
51
print("s=%s x=%s y=%s lane=%s" % (s, x, y, traci.person.getLaneID(p)))
52
try:
53
traci.person.moveToXY(p, "", x + 25, y, keepRoute=1, matchThreshold=20)
54
s = step()
55
print("s=%s x=%s y=%s lane=%s" % (s, x, y, traci.person.getLaneID(p)))
56
except traci.TraCIException:
57
pass
58
59
traci.close()
60
61