Mercurial Hosting > 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])) |