Mercurial Hosting > traffic-intelligence
changeset 325:6c9c7c956926
added velocity angle in indicators
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Fri, 10 May 2013 21:32:11 +0200 |
parents | 99ca91a46007 |
children | f7872d15a6cc |
files | python/events.py |
diffstat | 1 files changed, 6 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
diff -r 99ca91a46007 -r 6c9c7c956926 python/events.py --- a/python/events.py Thu May 09 04:02:46 2013 +0200 +++ b/python/events.py Fri May 10 21:32:11 2013 +0200 @@ -52,11 +52,15 @@ '''Computes the collision course cosine only if the cosine is positive''' collisionCourseDotProducts = {}#[0]*int(self.timeInterval.length()) collisionCourseAngles = {} + velocityAngles = {} distances = {}#[0]*int(self.timeInterval.length()) speedDifferentials = {} for instant in self.timeInterval: deltap = self.roadUser1.getPositionAtInstant(instant)-self.roadUser2.getPositionAtInstant(instant) - deltav = self.roadUser2.getVelocityAtInstant(instant)-self.roadUser1.getVelocityAtInstant(instant) + v1 = self.roadUser1.getVelocityAtInstant(instant) + v2 = self.roadUser2.getVelocityAtInstant(instant) + deltav = v2-v1 + velocityAngles[instant] = arccos(moving.Point.dot(v1, v2)/(v1.norm2()*v2.norm2())) collisionCourseDotProducts[instant] = moving.Point.dot(deltap, deltav) distances[instant] = deltap.norm2() speedDifferentials[instant] = deltav.norm2() @@ -67,6 +71,7 @@ self.addIndicator(indicators.SeverityIndicator('Collision Course Dot Product', collisionCourseDotProducts)) self.addIndicator(indicators.SeverityIndicator('Collision Course Angle', collisionCourseAngles)) self.addIndicator(indicators.SeverityIndicator('Distance', distances)) + self.addIndicator(indicators.SeverityIndicator('Velocity Angle', velocityAngles)) self.addIndicator(indicators.SeverityIndicator('Speed Differential', speedDifferentials)) # todo test for interaction instants and interval, compute indicators