comparison python/ubc_utils.py @ 51:3aed17fc468d

utils to save object types
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Sat, 25 Sep 2010 11:38:42 -0400
parents 8aed225f71d8
children 441c8387f34f
comparison
equal deleted inserted replaced
50:7b06d649122b 51:3aed17fc468d
3 3
4 import utils 4 import utils
5 from moving import MovingObject, TimeInterval, Trajectory 5 from moving import MovingObject, TimeInterval, Trajectory
6 6
7 __metaclass__ = type 7 __metaclass__ = type
8
9 userTypeNames = ['car',
10 'pedestrian',
11 'twowheels',
12 'bus'
13 'truck']
8 14
9 def getFileType(s): 15 def getFileType(s):
10 filePrefix = utils.removeExtension(s) 16 filePrefix = utils.removeExtension(s)
11 i = filePrefix.rfind('-') 17 i = filePrefix.rfind('-')
12 if i>0: 18 if i>0:
18 '''The program saves the objects, 24 '''The program saves the objects,
19 by just copying the corresponding trajectory and velocity data 25 by just copying the corresponding trajectory and velocity data
20 from the inFilename, and saving the characteristics in objects (first line) 26 from the inFilename, and saving the characteristics in objects (first line)
21 into outFilename''' 27 into outFilename'''
22 infile = utils.openCheck(inFilename) 28 infile = utils.openCheck(inFilename)
23 outfile = utils.openCheck(outFilename) 29 outfile = utils.openCheck(outFilename,'w')
24 30
25 if (not infile) | (not outfile): 31 if (inFilename.find('features') >= 0) or (not infile) or (not outfile):
26 return 32 return
27 33
28 lines = utils.getLines(infile) 34 lines = utils.getLines(infile)
29 objNum = 0 35 objNum = 0
30 while lines != []: 36 while lines != []:
31 i = 0 37 i = 0
32 while (i<len(objects)) and (objects[i].num != objNum): 38 while (i<len(objects)) and (objects[i].num != objNum):
33 i+=1 39 i+=1
34 if i<len(objects): 40 if i<len(objects):
35 l = lines[0].split(' ') 41 l = lines[0].split(' ')
36 outfile.write() 42 l[3] = str(objects[i].userType)
43 outfile.write(' '.join(l)+'\n')
44 for l in lines[1:]:
45 outfile.write(l+'\n')
46 outfile.write(utils.delimiterChar+'\n')
37 # next object 47 # next object
38 objNum += 1 48 objNum += 1
39 lines = utils.getLines(infile) 49 lines = utils.getLines(infile)
50
51 print('read {0} objects'.format(objNum))
40 52
41 def loadTrajectories(filename, nObjects = -1): 53 def loadTrajectories(filename, nObjects = -1):
42 '''Loads trajectories''' 54 '''Loads trajectories'''
43 55
44 file = utils.openCheck(filename) 56 file = utils.openCheck(filename)