1

我正在使用 Sumo 0.27.1 和 Traci 界面。

我正在尝试获取占用车道的车辆数量,为此我使用以下 java 代码:

     Repository<Lane> lanes = conn.getLaneRepository();
     Map<String, Lane> laneMap = lanes.getAll();
     Iterator<Entry<String, Lane>> laneMapIterator = laneMap.entrySet().iterator();

     while(laneMapIterator.hasNext())
     {
         Entry<String, Lane> laneElem = laneMapIterator.next();
         Lane l = laneElem.getValue();

         if (!l.getID().startsWith(":"))
         {
             System.out.println("Lane ID: "+ l.getID() + " CO2: " + l.getCo2Emission());
             System.out.println("Lane ID: "+ l.getID() 
+ " Occupancy: " + l.getLastStepOccupancy() + " Vehicle Number: " 
+ l.getLastStepVehicleNumber());
         }
     }

虽然在模拟中引入了很多汽车,但我只能得到其中 3 个车道的 CO2、占用率和车数;我在模拟过程中得到相同的数字。

类似的代码可以很好地获取单个车辆仪表,但不适用于车道。

我应该明确处理任何更新或重置命令吗?

提前致谢,

弗拉德

4

0 回答 0