Mercurial Hosting > traffic-intelligence
comparison python/storage.py @ 327:42f2b46ec210
added class for trajectories in curvilinear coordinates
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Wed, 12 Jun 2013 17:28:34 -0400 |
parents | f7872d15a6cc |
children | a70c205ebdd9 |
comparison
equal
deleted
inserted
replaced
326:f7872d15a6cc | 327:42f2b46ec210 |
---|---|
218 obj.laneNums = [int(numbers[13])] | 218 obj.laneNums = [int(numbers[13])] |
219 obj.precedingVehicles = [int(numbers[14])] # lead vehicle (before) | 219 obj.precedingVehicles = [int(numbers[14])] # lead vehicle (before) |
220 obj.followingVehicles = [int(numbers[15])] # following vehicle (after) | 220 obj.followingVehicles = [int(numbers[15])] # following vehicle (after) |
221 obj.spaceHeadways = [float(numbers[16])] # feet | 221 obj.spaceHeadways = [float(numbers[16])] # feet |
222 obj.timeHeadways = [float(numbers[17])] # seconds | 222 obj.timeHeadways = [float(numbers[17])] # seconds |
223 obj.curvilinearPositions = moving.Trajectory([[float(numbers[5])],[float(numbers[4])]]) # X is the longitudinal coordinate | 223 obj.curvilinearPositions = moving.CurvilinearTrajectory([float(numbers[5])],[float(numbers[4])], obj.laneNums) # X is the longitudinal coordinate |
224 obj.speeds = [float(numbers[11])] | 224 obj.speeds = [float(numbers[11])] |
225 obj.size = [float(numbers[8]), float(numbers[9])] # 8 lengh, 9 width # TODO: temporary, should use a geometry object | 225 obj.size = [float(numbers[8]), float(numbers[9])] # 8 lengh, 9 width # TODO: temporary, should use a geometry object |
226 return obj | 226 return obj |
227 | 227 |
228 numbers = input.readline().strip().split() | 228 numbers = input.readline().strip().split() |
240 objects.append(obj) | 240 objects.append(obj) |
241 if (nObjects>0) and (len(objects)>=nObjects): | 241 if (nObjects>0) and (len(objects)>=nObjects): |
242 break | 242 break |
243 obj = createObject(numbers) | 243 obj = createObject(numbers) |
244 else: | 244 else: |
245 obj.laneNums.append(int(numbers[13])) | |
245 obj.positions.addPositionXY(float(numbers[6]), float(numbers[7])) | 246 obj.positions.addPositionXY(float(numbers[6]), float(numbers[7])) |
246 obj.curvilinearPositions.addPositionXY(float(numbers[5]), float(numbers[4])) | 247 obj.curvilinearPositions.addPosition(float(numbers[5]), float(numbers[4]), obj.laneNums[-1]) |
247 obj.speeds.append(float(numbers[11])) | 248 obj.speeds.append(float(numbers[11])) |
248 obj.laneNums.append(int(numbers[13])) | |
249 obj.precedingVehicles.append(int(numbers[14])) | 249 obj.precedingVehicles.append(int(numbers[14])) |
250 obj.followingVehicles.append(int(numbers[15])) | 250 obj.followingVehicles.append(int(numbers[15])) |
251 obj.spaceHeadways.append(float(numbers[16])) | 251 obj.spaceHeadways.append(float(numbers[16])) |
252 obj.timeHeadways.append(float(numbers[17])) | 252 obj.timeHeadways.append(float(numbers[17])) |
253 | 253 |