Mercurial Hosting > traffic-intelligence
changeset 1116:a3982d591a61
placeholder implementation for interpolateCurvilinearPositions
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Mon, 24 Jun 2019 22:34:36 -0400 |
parents | cef7aa2f9931 |
children | bb58506c1bfd |
files | trafficintelligence/moving.py trafficintelligence/tests/moving.txt |
diffstat | 2 files changed, 5 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/trafficintelligence/moving.py Sat Jun 22 23:33:01 2019 -0400 +++ b/trafficintelligence/moving.py Mon Jun 24 22:34:36 2019 -0400 @@ -1447,7 +1447,7 @@ else: print('Object {} has no curvilinear positions'.format(self.getNum())) - def interpolateCurvilinearPositions(self, t): + def interpolateCurvilinearPositions(self, t, alignments = None): '''Linear interpolation of curvilinear positions, t being a float''' if hasattr(self, 'curvilinearPositions'): if self.existsAtInstant(t): @@ -1456,13 +1456,11 @@ p2 = self.getCurvilinearPositionAtInstant(i+1) if p1[2] == p2[2]: alpha = t-float(i) - # if alpha < 0.5: - # lane = p1[2] - # else: - # lane = p2[2] return [(1-alpha)*p1[0]+alpha*p2[0], (1-alpha)*p1[1]+alpha*p2[1], p1[2]] + elif alignments is not None: + pass # TODO else: - print('Object {} changes lane at {}'.format(self.getNum(), t)) + print('Object {} changes lane at {} and alignments are not provided'.format(self.getNum(), t)) else: print('Object {} does not exist at {}'.format(self.getNum(), t)) else:
--- a/trafficintelligence/tests/moving.txt Sat Jun 22 23:33:01 2019 -0400 +++ b/trafficintelligence/tests/moving.txt Mon Jun 24 22:34:36 2019 -0400 @@ -232,7 +232,7 @@ >>> o.interpolateCurvilinearPositions(9.7) # doctest:+ELLIPSIS [11.7..., 0.0..., 'b'] >>> o.interpolateCurvilinearPositions(10.7) -Object 0 changes lane at 10.7 +Object 0 changes lane at 10.7 and alignments are not provided >>> t2 = CurvilinearTrajectory.generate(0, 1., 10, 'a', 1.) >>> t1 = CurvilinearTrajectory.generate(3, 1., 10, 'b')