make_ids_positive.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 
3 import lanelet2
4 import sys
5 import argparse
6 
7 
8 def make_positive(layer):
9  for elem in layer:
10  if elem.id < 0:
11  elem.id = layer.uniqueId()
12 
13 
14 parser = argparse.ArgumentParser()
15 parser.add_argument("filename", help="Path to the input osm file")
16 group = parser.add_mutually_exclusive_group(required=True)
17 group.add_argument("output", help="Path to results", nargs='?')
18 group.add_argument("-i", "--inplace", action="store_true", help="Overwrite input file")
19 args = parser.parse_args()
20 
21 if args.inplace:
22  args.output = args.filename
23 
24 proj = lanelet2.projection.MercatorProjector(lanelet2.io.Origin(49, 8))
25 map = lanelet2.io.load(args.filename, proj)
26 
27 
28 make_positive(map.pointLayer)
29 make_positive(map.lineStringLayer)
30 make_positive(map.polygonLayer)
31 make_positive(map.laneletLayer)
32 make_positive(map.areaLayer)
33 make_positive(map.regulatoryElementLayer)
34 
35 lanelet2.io.write(args.output, map, proj)
make_ids_positive.make_positive
def make_positive(layer)
Definition: make_ids_positive.py:8


lanelet2_python
Author(s): Fabian Poggenhans
autogenerated on Thu Mar 6 2025 03:26:14