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