SUMO入门(八) - 从Python引入TraCI接口

SUMO入门(八) - 从Python引入TraCI接口

TraCI
TraCI/Interfacing TraCI from Python

TraCI命令分为13个部分,它们对应于各个模块: gui,lane,poi,simulation,trafficlight,vehicletype,edge,inductionloop,junction,multientryexit,polygon,route,person,vehicle
有关函数的详细列表,请参阅 pydoc generated documentation。命令的源代码可以在eclipse/sumo找到

1 在脚本中引入TraCI

要使用该库,<SUMO_HOME>/tools 目录必须位于python加载路径上。 通常如下:

 import os, sys
 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_HOME。 或者,您可以直接在行中声明 sumo/tools 的路径

sys.path.append(os.path.join('c:', os.sep, 'whatever', 'path', 'to', 'sumo', 'tools'))

2 第一步

通常,从Python接入SUMO非常容易(以下示例是 tutorial / traci_tls 的修改)

首先,编写命令行以启动 SUMOSUMO-GUI
(省略在0.28.0版本之前需要的远程端口选项 --remote-port)

sumoBinary = "/path/to/sumo-gui"
sumoCmd = [sumoBinary, "-c", "yourConfiguration.sumocfg"]

然后开始仿真并使用脚本连接到它:

import traci
traci.start(sumoCmd) 

step = 0
while step < 1000:
   traci.simulationStep()
   if traci.inductionloop.getLastStepVehicleNumber("0") >
  • 12
    点赞
  • 97
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值