source: subversion/applications/routing/pyroute/weights.py @ 5649

Last change on this file since 5649 was 5390, checked in by ojw, 12 years ago

testing methods of specifying weightings - first try is to put them in
python file

File size: 1.1 KB
Line 
1Weightings = { \
2  'motorway': {'car':10},
3  'trunk':    {'car':10, 'cycle':0.05},
4  'primary':  {'cycle': 0.3, 'car':2, 'foot':1, 'horse':0.1},
5  'secondary': {'cycle': 1, 'car':1.5, 'foot':1, 'horse':0.2},
6  'tertiary': {'cycle': 1, 'car':1, 'foot':1, 'horse':0.3},
7  'unclassified': {'cycle': 1, 'car':1, 'foot':1, 'horse':1},
8  'minor': {'cycle': 1, 'car':1, 'foot':1, 'horse':1},
9  'cycleway': {'cycle': 3, 'foot':0.2},
10  'residential': {'cycle': 3, 'car':0.7, 'foot':1, 'horse':1},
11  'track': {'cycle': 1, 'car':1, 'foot':1, 'horse':1, 'mtb':3},
12  'service': {'cycle': 1, 'car':1, 'foot':1, 'horse':1},
13  'bridleway': {'cycle': 0.8, 'foot':1, 'horse':10, 'mtb':3},
14  'footway': {'cycle': 0.2, 'foot':1},
15  'steps': {'foot':1, 'cycle':0.3},
16  'rail':{'train':1},
17  'light_rail':{'train':1},
18  'subway':{'train':1}
19  }
20
21def getWeight(transport, wayType):
22  try:
23    return(Weightings[wayType][transport])
24  except KeyError:
25    # Default: if no weighting is defined, then assume it can't be routed
26    return(0)
27 
28
29if __name__ == "__main__":
30  print getWeight(sys.argv[1],sys.argv[2])
Note: See TracBrowser for help on using the repository browser.