diff --git a/Car.py b/Car.py index e8db4bb..1402ee0 100644 --- a/Car.py +++ b/Car.py @@ -35,7 +35,7 @@ class Car(): #print(f"{self.id} : {startEdge.getID()} -> {nextEdge.getID()} via {laneId}") - def __init__(self,carID,route,parentMap,parentController,infoWidg): + def __init__(self,carID,route,startTime,parentMap,parentController,infoWidg): self.id=carID self.map=parentMap self.controller=parentController @@ -46,6 +46,8 @@ class Car(): self.laneShape=None self.laneId=0 self.leader=None + self.startTime=float(startTime) + self.signals=updateSignals() self.signals.updateDisp.connect(self.infoWidg.setVal) self.signals.addGraphPt.connect(self.infoWidg.addSpeedPoint) @@ -166,6 +168,9 @@ class Car(): self.signals.addGraphPt.emit((1,self.controller.t,vsec)) def update(self,dt): + if self.controller.t < self.startTime: + return + self.leader=self.getLeader(100) self.conduite(self.vmax,self.leader,dt) diff --git a/CarController.py b/CarController.py index 0b121d9..d95a8e8 100644 --- a/CarController.py +++ b/CarController.py @@ -84,7 +84,7 @@ class CarController: for vehicle in sumolib.xml.parse(path,"vehicle"): route=vehicle.route[0].edges.split() wId=self.infoWidget.addItem(carInfo(self.infoWidget), vehicle.id) - self.cars.append(Car(vehicle.id,route,self.map,self,self.infoWidget.widget(wId))) + self.cars.append(Car(vehicle.id,route,vehicle.depart,self.map,self,self.infoWidget.widget(wId))) def prepareRoute(self): for car in self.cars: @@ -100,7 +100,7 @@ class CarController: def update(self): if self.map.net is None: return - self.t+=1 + self.t+=1/60 for car in self.cars: car.update(1.0/60) diff --git a/test5.rou.xml b/test5.rou.xml index 9f94f9b..c55f64b 100644 --- a/test5.rou.xml +++ b/test5.rou.xml @@ -44,22 +44,22 @@ - + - + - + - + - + - +