def test_repeated_object(): object1 = pyodrx.Object(s=10.0, t=-2, dynamic=pyodrx.Dynamic.no, orientation=pyodrx.Orientation.positive, zOffset=0.00, height=1.0, Type=pyodrx.ObjectType.pole) object1.repeat(100, 50) road = pyodrx.create_straight_road(0) road.add_object(object1) prettyprint(road.get_element())
def test_object_roadside(): road = pyodrx.create_straight_road(0) odr = pyodrx.OpenDrive('myroad') odr.add_road(road) odr.adjust_roads_and_lanes() object1 = pyodrx.Object(s=0, t=0, dynamic=pyodrx.Dynamic.no, orientation=pyodrx.Orientation.positive, zOffset=0.00, height=1.0, Type=pyodrx.ObjectType.pole) road.add_object_roadside(object1, 50, tOffset=0.85) prettyprint(road.get_element())
def test_object(): object1 = pyodrx.Object(s=10.0, t=-2, dynamic=pyodrx.Dynamic.no, orientation=pyodrx.Orientation.positive, zOffset=0.00, id="1", height=1.0, Type=pyodrx.ObjectType.pole) #same chosen ID should cause warning and be resolved automatically object2 = pyodrx.Object(s=20.0, t=-2, dynamic=pyodrx.Dynamic.no, orientation=pyodrx.Orientation.positive, zOffset=0.00, height=10, id="1", Type=pyodrx.ObjectType.streetLamp) road = pyodrx.create_straight_road(0) road.add_object([object1, object2]) prettyprint(road.get_element())
def test_signal(): signal1 = pyodrx.Signal(s=10.0, t=-2, dynamic=pyodrx.Dynamic.no, orientation=pyodrx.Orientation.positive, zOffset=0.00, country="US", Type="R1", subtype="1") signal2 = pyodrx.Signal(s=20.0, t=-2, dynamic=pyodrx.Dynamic.no, orientation=pyodrx.Orientation.positive, country="DEU", Type="274", subtype="120", value=120, unit="km/h") road = pyodrx.create_straight_road(0) road.add_signal(signal1) road.add_signal(signal2) prettyprint(road.get_element())
import numpy as np import os from scenariogeneration import xodr roads = [] numintersections = 4 # 3 or 4 angles = [] for i in range(numintersections): roads.append(xodr.create_straight_road(i)) # use this instead to change the number of lanes in the crossing #roads.append(xodr.generators.create_straight_road(i, length=100, junction=-1, n_lanes=2, lane_offset=3)) angles.append(i * 2 * np.pi / numintersections) # use this for a T-crossing instead # angles = [0,np.pi/2, 3*np.pi/2] print(roads) junc = xodr.create_junction_roads(roads, angles, 8) odr = xodr.OpenDrive('myroad') junction = xodr.create_junction(junc, 1, roads) odr.add_junction(junction) for r in roads: odr.add_road(r) for j in junc: odr.add_road(j) odr.adjust_roads_and_lanes()
def test_road_with_road_types(): road = pyodrx.create_straight_road(0) road.add_type(pyodrx.RoadType.motorway, 0) prettyprint(road.get_element())