comparison python/storage.py @ 78:99e807c29753

added loading other information from NGSIM
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Fri, 25 Feb 2011 14:25:34 -0500
parents 575340e6fce3
children 436b87d4b992
comparison
equal deleted inserted replaced
77:5e6cd36a991c 78:99e807c29753
32 #time = moving.TimeInterval(firstFrameNum, firstFrameNum+int(numbers[2])-1) 32 #time = moving.TimeInterval(firstFrameNum, firstFrameNum+int(numbers[2])-1)
33 obj = moving.MovingObject(num = int(numbers[0]), 33 obj = moving.MovingObject(num = int(numbers[0]),
34 timeInterval = moving.TimeInterval(firstFrameNum, lastFrameNum), 34 timeInterval = moving.TimeInterval(firstFrameNum, lastFrameNum),
35 positions = moving.Trajectory([[float(numbers[6])],[float(numbers[7])]]), 35 positions = moving.Trajectory([[float(numbers[6])],[float(numbers[7])]]),
36 userType = int(numbers[10])) 36 userType = int(numbers[10]))
37 obj.userType = int(numbers[10])
38 obj.laneNums = [int(numbers[13])]
39 obj.precedingVehicles = [int(numbers[14])] # lead vehicle (before)
40 obj.followingVehicles = [int(numbers[15])] # following vehicle (after)
41 obj.spaceHeadways = [float(numbers[16])] # feet
42 obj.timeHeadways = [float(numbers[17])] # seconds
37 obj.curvilinearPositions = moving.Trajectory([[float(numbers[5])],[float(numbers[4])]]) # X is the longitudinal coordinate 43 obj.curvilinearPositions = moving.Trajectory([[float(numbers[5])],[float(numbers[4])]]) # X is the longitudinal coordinate
38 obj.speeds = [float(numbers[11])] 44 obj.speeds = [float(numbers[11])]
39 obj.size = [float(numbers[8]), float(numbers[9])] # 8 lengh, 9 width # TODO: temporary, should use a geometry object 45 obj.size = [float(numbers[8]), float(numbers[9])] # 8 lengh, 9 width # TODO: temporary, should use a geometry object
40 return obj 46 return obj
41 47
54 objects.append(obj) 60 objects.append(obj)
55 if (nObjects>0) and (len(objects)>=nObjects): 61 if (nObjects>0) and (len(objects)>=nObjects):
56 break 62 break
57 obj = createObject(numbers) 63 obj = createObject(numbers)
58 else: 64 else:
59 print(numbers[6])
60 obj.positions.addPositionXY(float(numbers[6]), float(numbers[7])) 65 obj.positions.addPositionXY(float(numbers[6]), float(numbers[7]))
61 obj.curvilinearPositions.addPositionXY(float(numbers[5]), float(numbers[4])) 66 obj.curvilinearPositions.addPositionXY(float(numbers[5]), float(numbers[4]))
62 obj.speeds.append(float(numbers[11])) 67 obj.speeds.append(float(numbers[11]))
68 obj.laneNums.append(int(numbers[13]))
69 obj.precedingVehicles.append(int(numbers[14]))
70 obj.followingVehicles.append(int(numbers[15]))
71 obj.spaceHeadways.append(float(numbers[16]))
72 obj.timeHeadways.append(float(numbers[17]))
63 73
64 if (obj.size[0] != float(numbers[8])): 74 if (obj.size[0] != float(numbers[8])):
65 print 'changed length obj %d' % (f.num) 75 print 'changed length obj %d' % (f.num)
66 if (obj.size[1] != float(numbers[9])): 76 if (obj.size[1] != float(numbers[9])):
67 print 'changed width obj %d' % (f.num) 77 print 'changed width obj %d' % (f.num)