Mercurial Hosting > traffic-intelligence
changeset 694:c4363aa6f0e5 dev
updated function to find road users for interactions
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Tue, 30 Jun 2015 17:56:14 -0400 |
parents | 5ee22bf7e4d5 |
children | 957126bfb456 |
files | python/events.py |
diffstat | 1 files changed, 14 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/python/events.py Tue Jun 30 15:46:31 2015 -0400 +++ b/python/events.py Tue Jun 30 17:56:14 2015 -0400 @@ -113,20 +113,23 @@ return self.roadUserNumbers def setRoadUsers(self, objects): - nums = list(self.getRoadUserNumbers()) - if objects[nums[0]].getNum() == nums[0]: + nums = sorted(list(self.getRoadUserNumbers())) + if nums[0]<len(objects) and objects[nums[0]].getNum() == nums[0]: self.roadUser1 = objects[nums[0]] - if objects[nums[1]].getNum() == nums[1]: + if nums[1]<len(objects) and objects[nums[1]].getNum() == nums[1]: self.roadUser2 = objects[nums[1]] - 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 + 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 def getIndicator(self, indicatorName): return self.indicators.get(indicatorName, None)