sumo与python的接口——TraCI
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了sumo与python的接口——TraCI,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1529字,纯文字阅读大概需要3分钟。
内容图文
![sumo与python的接口——TraCI](/upload/InfoBanner/zyjiaocheng/598/be37cb9c0719412a99d2615ca1fda01a.jpg)
在python中添加TraCI
官网https://sumo.dlr.de/docs/TraCI.html
首先找到traci的安装目录:
sumo\tools
打开python的安装目录(或者anaconda安装目录)–> Lib --> site-packages,在该目录下新建traci.pth文件,在该文件中输入traci的安装目录。
ps:可通过cmd打开python输入
import traci
检验是否安装成功。
代码实现
from __future__ import absolute_import
from __future__ import print_function
import os
import sys
import optparse
import random
import traci
import time
from sumolib import checkBinary
#检测是否已经添加环境变量
if 'SUMO_HOME' in os.environ:
tools = os.path.join(os.environ['SUMO_HOME'], 'tools')
sys.path.append(tools)
else:
sys.exit("please declare environment variable 'SUMO_HOME'")
#sumo自带的,不知道有啥用
def get_options():
optParser = optparse.OptionParser()
optParser.add_option("--nogui", action="store_true",
default=False, help="run the commandline version of sumo")
options, args = optParser.parse_args()
return options
#主函数
if __name__ == "__main__":
options = get_options()
if options.nogui:
sumoBinary = checkBinary('sumo')
else:
sumoBinary = checkBinary('sumo-gui')
sumocfgfile = "E:\\sumo\\template\\template.sumocfg" #sumocfg文件的位置
traci.start([sumoBinary, "-c", sumocfgfile]) #打开sumocfg文件
for step in range(0,3600):
traci.simulationStep()
#time.sleep(0.1)
simulation_time = traci.simulation.getTime() #获得仿真时间
print("仿真时间是",simulation_time)
all_vehicle_id = traci.vehicle.getIDList() #获得所有车的id
#获取所有车的position
all_vehicle_position = [(i, traci.vehicle.getPosition(i)) for i in all_vehicle_id]
traci.close()
内容总结
以上是互联网集市为您收集整理的sumo与python的接口——TraCI全部内容,希望文章能够帮你解决sumo与python的接口——TraCI所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。