在Veins / Omnet ++ / Sumo中更改特定的交通信号灯

时间:2019-03-06 22:47:00

标签: omnet++ veins sumo

我怀疑我还没有找到答案。我需要更换一个交通信号灯,它的ID为颜色。但是,我只需要更改交通信号灯的特定部分,例如,在一个十字路口,我需要更改绿灯,以允许汽车从南向东行驶,同时阻止所有其他车辆行驶。我找到了一种解决方案,该解决方案是使用函数setState来更改这些值,并且可以正常工作,但是此后颜色保持不变,尽管将状态更改为以前的颜色,但呈现的行为与以前不同。 总之,我需要在有限的时间内更改交通灯的颜色,但我无法实现这一点。 预先感谢!

1 个答案:

答案 0 :(得分:0)

您可以使用SUMO的netedit发明一个新的交通信号灯计划,并使用create or replace view TripMaps as select s.Name, s.CoordLat, s.CoordLong, s.Landmark from Stations s where s.Name in (Select t.StartStation,t.EndStation from Trips t); 将该计划临时更改回旧计划,或者使用traci.trafficlight.setProgram设置一个全新的计划。请注意,这些是traci函数,可能尚未在Veins中实现。