nsaunier/traffic-intelligence
updated setRoadUsers to force the new objects
Commit 655a1646f0d5 · Nicolas Saunier · 2024-06-18 15:29 -0400
Comments
No comments yet.
Diff
diff --git a/trafficintelligence/events.py b/trafficintelligence/events.py
--- a/trafficintelligence/events.py
+++ b/trafficintelligence/events.py
@@ -117,23 +117,12 @@
return self.roadUserNumbers
def setRoadUsers(self, objects):
- nums = sorted(list(self.getRoadUserNumbers()))
- if nums[0]<len(objects) and objects[nums[0]].getNum() == nums[0]:
- self.roadUser1 = objects[nums[0]]
- if nums[1]<len(objects) and objects[nums[1]].getNum() == nums[1]:
- self.roadUser2 = objects[nums[1]]
-
- if self.roadUser1 is None or self.roadUser2 is None:
- self.roadUser1 = None
- self.roadUser2 = None
- i = 0
- while i < len(objects) and self.roadUser2 is None:
- if objects[i].getNum() in nums:
- if self.roadUser1 is None:
- self.roadUser1 = objects[i]
- else:
- self.roadUser2 = objects[i]
- i += 1
+ tmpobjects = {o.getNum():o for o in objects}
+ i, j = self.roadUserNumbers
+ if i in tmpobjects:
+ self.roadUser1 = tmpobjects[i]
+ if j in tmpobjects:
+ self.roadUser2 = tmpobjects[j]
def getIndicator(self, indicatorName):
return self.indicators.get(indicatorName, None)