Mercurial > hg > nsaunier > traffic-intelligence
comparison python/storage.py @ 542:a3add9f751ef
added differentiate function for curvilinear trajectories and modified the addPosition functions
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Mon, 07 Jul 2014 16:54:10 -0400 |
| parents | 048b43654870 |
| children | b5525249eda1 |
comparison
equal
deleted
inserted
replaced
| 541:048b43654870 | 542:a3add9f751ef |
|---|---|
| 450 if nObjects < 0 or len(objects) < nObjects: | 450 if nObjects < 0 or len(objects) < nObjects: |
| 451 objects[objNum] = moving.MovingObject(num = objNum, timeInterval = moving.TimeInterval(instant, instant)) | 451 objects[objNum] = moving.MovingObject(num = objNum, timeInterval = moving.TimeInterval(instant, instant)) |
| 452 objects[objNum].curvilinearPositions = moving.CurvilinearTrajectory() | 452 objects[objNum].curvilinearPositions = moving.CurvilinearTrajectory() |
| 453 if (warmUpLastInstant == None or firstInstants[objNum] >= warmUpLastInstant) and objNum in objects: | 453 if (warmUpLastInstant == None or firstInstants[objNum] >= warmUpLastInstant) and objNum in objects: |
| 454 objects[objNum].timeInterval.last = instant | 454 objects[objNum].timeInterval.last = instant |
| 455 objects[objNum].curvilinearPositions.addPosition(s, y, lane) | 455 objects[objNum].curvilinearPositions.addPositionSYL(s, y, lane) |
| 456 | 456 |
| 457 return objects.values() | 457 return objects.values() |
| 458 | 458 |
| 459 def loadTrajectoriesFromNgsimFile(filename, nObjects = -1, sequenceNum = -1): | 459 def loadTrajectoriesFromNgsimFile(filename, nObjects = -1, sequenceNum = -1): |
| 460 '''Reads data from the trajectory data provided by NGSIM project | 460 '''Reads data from the trajectory data provided by NGSIM project |
| 502 break | 502 break |
| 503 obj = createObject(numbers) | 503 obj = createObject(numbers) |
| 504 else: | 504 else: |
| 505 obj.laneNums.append(int(numbers[13])) | 505 obj.laneNums.append(int(numbers[13])) |
| 506 obj.positions.addPositionXY(float(numbers[6]), float(numbers[7])) | 506 obj.positions.addPositionXY(float(numbers[6]), float(numbers[7])) |
| 507 obj.curvilinearPositions.addPosition(float(numbers[5]), float(numbers[4]), obj.laneNums[-1]) | 507 obj.curvilinearPositions.addPositionSYL(float(numbers[5]), float(numbers[4]), obj.laneNums[-1]) |
| 508 obj.speeds.append(float(numbers[11])) | 508 obj.speeds.append(float(numbers[11])) |
| 509 obj.precedingVehicles.append(int(numbers[14])) | 509 obj.precedingVehicles.append(int(numbers[14])) |
| 510 obj.followingVehicles.append(int(numbers[15])) | 510 obj.followingVehicles.append(int(numbers[15])) |
| 511 obj.spaceHeadways.append(float(numbers[16])) | 511 obj.spaceHeadways.append(float(numbers[16])) |
| 512 obj.timeHeadways.append(float(numbers[17])) | 512 obj.timeHeadways.append(float(numbers[17])) |
