VISSIM&COM——Python

如何在python中调用VISSIM中“节点”的结果呢(想调用“车辆平均延误”和“车辆数”)

img


这样写,但是GetResult()报错了,应该用什么函数去调用呢?

img


在Python中调用VISSIM的COM接口可以这么做:
1. 首先需要导入VISSIM的COM库:
python
import vissim
2. 连接到VISSIM的COM服务器:
python 
vis = vissim.VisSimComServer()
3. 打开VISSIM文件:
python
vis.LoadNet("your network file.inpx")
4. 运行仿真:
python
vis.Simulation.RunContinuous()
 
5. 获取仿真结果:
- 获取节点的车辆数:
python
node_number = vis.Net.Nodes("your node name").AttValue("vehnumb") 
- 获取节点的平均延误:
python
avg_delay = vis.Net.Nodes("your node name").AttValue("avdelay")
所以完整的代码可以这样:
python
import vissim

vis = vissim.VisSimComServer()
vis.LoadNet("your network file.inpx")
vis.Simulation.RunContinuous()

node_number = vis.Net.Nodes("your node name").AttValue("vehnumb") 
avg_delay = vis.Net.Nodes("your node name").AttValue("avdelay")

print(f"Node {node_name} vehicle number: {node_number}")  
print(f"Node {node_name} average delay: {avg_delay}")