Exemple #1
0
def test_rel_sync_action():

    asa = OSC.RelativeSynchronizeAction('Ego',
                                        OSC.WorldPosition(0, 0, 0, 0, 0, 0),
                                        OSC.WorldPosition(10, 0, 0, 0, 0, 0),
                                        20, 'delta')
    OSC.prettyprint(asa.get_element())
Exemple #2
0
def test_assign_route():
    route = OSC.Route('myroute')
    route.add_waypoint(OSC.WorldPosition(0, 0, 0, 0, 0, 0),
                       OSC.RouteStrategy.shortest)
    route.add_waypoint(OSC.WorldPosition(1, 1, 0, 0, 0, 0),
                       OSC.RouteStrategy.shortest)
    OSC.AssignRouteAction(route)
Exemple #3
0
def test_route():
    route = OSC.Route('myroute')

    route.add_waypoint(OSC.WorldPosition(0, 0, 0, 0, 0, 0), 'closest')
    route.add_waypoint(OSC.WorldPosition(1, 1, 0, 0, 0, 0), 'closest')

    OSC.prettyprint(route.get_element())
Exemple #4
0
def test_route():
    route = OSC.Route('myroute')

    route.add_waypoint(OSC.WorldPosition(0,0,0,0,0,0),OSC.RouteStrategy.shortest)
    route.add_waypoint(OSC.WorldPosition(1,1,0,0,0,0),OSC.RouteStrategy.shortest)

    OSC.prettyprint(route.get_element())
Exemple #5
0
def test_abs_sync_action():

    asa = OSC.AbsoluteSynchronizeAction('Ego',
                                        OSC.WorldPosition(0, 0, 0, 0, 0, 0),
                                        OSC.WorldPosition(10, 0, 0, 0, 0, 0),
                                        20)
    OSC.prettyprint(asa.get_element())
Exemple #6
0
def test_nurbs():
    cp1 = OSC.ControlPoint(OSC.WorldPosition(),1,0.1)
    cp2 = OSC.ControlPoint(OSC.WorldPosition(),2,0.2)
    cp3 = OSC.ControlPoint(OSC.WorldPosition(),3,0.3)


    nurb = OSC.Nurbs(2)
    nurb.add_control_point(cp1)
    nurb.add_control_point(cp2)
    nurb.add_control_point(cp3)
    nurb.add_knots([5,4,3,2,1])

    OSC.prettyprint(nurb.get_element())
Exemple #7
0
def test_route_position():
    route = OSC.Route('myroute')

    route.add_waypoint(OSC.WorldPosition(), OSC.RouteStrategy.shortest)

    route.add_waypoint(OSC.WorldPosition(1, 1, 1), OSC.RouteStrategy.shortest)

    routepos = OSC.RoutePositionOfCurrentEntity(route, 'Ego')
    OSC.prettyprint(routepos.get_element())
    routepos = OSC.RoutePositionInRoadCoordinates(route, 1, 3)
    OSC.prettyprint(routepos.get_element())
    routepos = OSC.RoutePositionInLaneCoordinates(route, 1, 'a', 2)
    OSC.prettyprint(routepos.get_element())
Exemple #8
0
def test_trafficswarmaction():

    prop = OSC.Properties()
    prop.add_file('mycontrollerfile.xml')
    controller = OSC.Controller('mycontroller', prop)

    traffic = OSC.TrafficDefinition('my traffic')
    traffic.add_controller(controller, 0.5)
    traffic.add_controller(
        OSC.CatalogReference('ControllerCatalog', 'my controller'), 0.5)

    traffic.add_vehicle(OSC.VehicleCategory.car, 0.9)
    traffic.add_vehicle(OSC.VehicleCategory.bicycle, 0.1)

    source_action = OSC.TrafficSourceAction(10, 10, OSC.WorldPosition(),
                                            traffic, 100)

    OSC.prettyprint(source_action.get_element())

    swarm_action = OSC.TrafficSwarmAction(10, 20, 10, 2, 10, 'Ego', traffic)
    OSC.prettyprint(swarm_action.get_element())

    swarm_action = OSC.TrafficSwarmAction(10, 20, 10, 2, 10, 'Ego', traffic,
                                          10)
    OSC.prettyprint(swarm_action.get_element())
Exemple #9
0
def test_init():

    init = OSC.Init()
    TD = OSC.TransitionDynamics('step', 'time', 0)
    egospeed = OSC.AbsoluteSpeedAction(10, TD)

    init.add_init_action('Ego', egospeed)
    init.add_init_action(
        'Ego', OSC.TeleportAction(OSC.WorldPosition(1, 2, 3, 0, 0, 0)))
    init.add_init_action('Target_1', egospeed)
    init.add_init_action(
        'Target_1', OSC.TeleportAction(OSC.WorldPosition(1, 5, 3, 0, 0, 0)))
    init.add_init_action('Target_2', egospeed)
    init.add_init_action(
        'Target_2', OSC.TeleportAction(OSC.WorldPosition(10, 2, 3, 0, 0, 0)))
    OSC.prettyprint(init.get_element())
Exemple #10
0
def test_entitytrigger():
    trigcond = OSC.TimeToCollisionCondition(10,
                                            'equalTo',
                                            True,
                                            freespace=False,
                                            position=OSC.WorldPosition())

    trigger = OSC.EntityTrigger('mytesttrigger', 0.2, 'rising', trigcond,
                                'Target_1')
    OSC.prettyprint(trigger.get_element())
Exemple #11
0
def test_timetocollisioncondition():
    cond = OSC.TimeToCollisionCondition(value=20,
                                        alongroute=True,
                                        rule='equalTo',
                                        entity='Ego')
    OSC.prettyprint(cond.get_element())

    cond = OSC.TimeToCollisionCondition(value=20,
                                        alongroute=True,
                                        rule='equalTo',
                                        position=OSC.WorldPosition())
    OSC.prettyprint(cond.get_element())
Exemple #12
0
def test_storyboard():
    init = OSC.Init()
    TD = OSC.TransitionDynamics(OSC.DynamicsShapes.step,
                                OSC.DynamicsDimension.rate, 1)
    egospeed = OSC.AbsoluteSpeedAction(10, TD)

    init.add_init_action('Ego', egospeed)
    init.add_init_action(
        'Ego', OSC.TeleportAction(OSC.WorldPosition(1, 2, 3, 0, 0, 0)))
    init.add_init_action('Target_1', egospeed)
    init.add_init_action(
        'Target_1', OSC.TeleportAction(OSC.WorldPosition(1, 5, 3, 0, 0, 0)))
    init.add_init_action('Target_2', egospeed)
    init.add_init_action(
        'Target_2', OSC.TeleportAction(OSC.WorldPosition(10, 2, 3, 0, 0, 0)))
    OSC.prettyprint(init.get_element())

    event = OSC.Event('myfirstevent', OSC.Priority.overwrite)
    event.add_trigger(trigger)
    event.add_action('newspeed', speedaction)
    man = OSC.Maneuver('my maneuver')
    man.add_event(event)
    OSC.prettyprint(man.get_element())

    mangr = OSC.ManeuverGroup('mangroup')
    mangr.add_actor('Ego')
    mangr.add_maneuver(man)
    OSC.prettyprint(mangr.get_element())

    act = OSC.Act('my act', trigger)
    act.add_maneuver_group(mangr)
    OSC.prettyprint(act.get_element())

    story = OSC.Story('mystory')
    story.add_act(act)
    OSC.prettyprint(story.get_element())

    sb = OSC.StoryBoard(init)
    sb.add_story(story)
    OSC.prettyprint(sb.get_element())
Exemple #13
0
def test_scenario():
    catalog = OSC.Catalog()
    catalog.add_catalog('VehicleCatalog', 'Catalogs/VehicleCatalogs')
    catalog.add_catalog('ControllerCatalog', 'Catalogs/ControllerCatalogs')

    roadfile = 'Databases/SampleDatabase.xodr'
    road = OSC.RoadNetwork(roadfile)

    trigcond = OSC.TimeToCollisionCondition(10,
                                            'equalTo',
                                            True,
                                            freespace=False,
                                            position=OSC.WorldPosition())

    trigger = OSC.EntityTrigger('mytesttrigger', 0.2, 'rising', trigcond,
                                'Target_1')

    event = OSC.Event('myfirstevent', 'overwrite')
    event.add_trigger(trigger)

    TD = OSC.TransitionDynamics('step', 'rate', 1)

    lanechangeaction = OSC.AbsoluteLaneChangeAction(1, TD)
    OSC.prettyprint(lanechangeaction.get_element())

    speedaction = OSC.AbsoluteSpeedAction(50, TD)
    event.add_action('newspeed', speedaction)

    man = OSC.Maneuver('my maneuver')
    man.add_event(event)

    mangr = OSC.ManeuverGroup('mangroup')
    mangr.add_actor('Ego')
    mangr.add_maneuver(man)

    act = OSC.Act('my act', trigger)
    act.add_maneuver_group(mangr)

    story = OSC.Story('mystory')
    story.add_act(act)

    bb = OSC.BoundingBox(2, 5, 1.5, 1.5, 0, 0.2)
    fa = OSC.Axel(2, 2, 2, 1, 1)
    ba = OSC.Axel(1, 1, 2, 1, 1)
    veh = OSC.Vehicle('mycar', 'vehicle', bb, fa, ba, 150, 10, 10)

    entities = OSC.Entities()
    entities.add_scenario_object('Ego', veh)
    entities.add_scenario_object('Target_1', veh)

    init = OSC.Init()
    egospeed = OSC.AbsoluteSpeedAction(10, TD)

    init.add_init_action('Ego', egospeed)
    init.add_init_action(
        'Ego', OSC.TeleportAction(OSC.WorldPosition(1, 2, 3, 0, 0, 0)))
    init.add_init_action('Target_1', egospeed)
    init.add_init_action(
        'Target_1', OSC.TeleportAction(OSC.WorldPosition(1, 5, 3, 0, 0, 0)))

    sb = OSC.StoryBoard(init)
    sb.add_story(story)

    sce = OSC.Scenario('myscenario',
                       'Mandolin',
                       OSC.ParameterDeclarations(),
                       entities=entities,
                       storyboard=sb,
                       roadnetwork=road,
                       catalog=catalog)
    OSC.prettyprint(sce.get_element())
Exemple #14
0
def test_waypoint():
    wp = OSC.Waypoint(OSC.WorldPosition(),OSC.RouteStrategy.shortest)
    OSC.prettyprint(wp.get_element())
Exemple #15
0
import pytest

import pyoscx as OSC

TD = OSC.TransitionDynamics(OSC.DynamicsShapes.step,
                            OSC.DynamicsDimension.rate, 1)
speedaction = OSC.AbsoluteSpeedAction(50, TD)
trigcond = OSC.TimeToCollisionCondition(
    10,
    OSC.Rule.equalTo,
    position=OSC.WorldPosition(),
    freespace=False,
)

trigger = OSC.EntityTrigger('mytesttrigger', 0.2, OSC.ConditionEdge.rising,
                            trigcond, 'Target_1')


def test_event():

    event = OSC.Event('myfirstevent', OSC.Priority.overwrite)
    event.add_trigger(trigger)

    event.add_action('newspeed', speedaction)


def test_maneuver():
    event = OSC.Event('myfirstevent', OSC.Priority.overwrite)
    event.add_trigger(trigger)
    event.add_action('newspeed', speedaction)
    man = OSC.Maneuver('my maneuver')
Exemple #16
0
def test_aqcuire_position_route():
    ara = OSC.AssingRouteAction(OSC.WorldPosition(1,1,0,0,0,0))
    OSC.prettyprint(ara.get_element())
Exemple #17
0
def test_waypoint():
    wp = OSC.Waypoint(OSC.WorldPosition(), 'fastest')
    OSC.prettyprint(wp.get_element())
Exemple #18
0
def test_worldposition_input():
    pos = OSC.WorldPosition(x=1, y=2, z=1.123)
    pos.get_attributes()
    p = pos.get_element()
    OSC.prettyprint(p)
Exemple #19
0
def test_reachpositioncondition():
    cond = OSC.ReachPositionCondition(OSC.WorldPosition(), 0.01)
    OSC.prettyprint(cond.get_element())
Exemple #20
0
import pyoscx

route = pyoscx.Route('myroute')

route.add_waypoint(pyoscx.WorldPosition(), 'shortest')

route.add_waypoint(pyoscx.WorldPosition(1, 1, 1), 'shortest')

# routepos = pyoscx.RoutePositionOfCurrentEntity(route,'Ego')
# routepos = pyoscx.RoutePositionInRoadCoordinates(route,1,3)
routepos = pyoscx.RoutePositionInLaneCoordinates(route, 1, 'a', 2)
pyoscx.prettyprint(routepos.get_element())

### create catalogs
catalog = pyoscx.Catalog()
catalog.add_catalog('VehicleCatalog', '../xosc/Catalogs/Vehicles')

### create road
road = pyoscx.RoadNetwork(roadfile='../xodr/e6mini.xodr',
                          scenegraph='../models/e6mini.osgb')

### create parameters
paramdec = pyoscx.ParameterDeclarations()

paramdec.add_parameter(pyoscx.Parameter('$HostVehicle', 'string', 'car_white'))
paramdec.add_parameter(pyoscx.Parameter('$TargetVehicle', 'string', 'car_red'))

## create entities

egoname = 'Ego'
targetname = 'Target'
Exemple #21
0
def test_addEntity():
    OSC.prettyprint(OSC.AddEntityAction('my new thingy',OSC.WorldPosition()).get_element())
Exemple #22
0
def test_distancecondition():
    cond = OSC.DistanceCondition(1, 'lessThan', OSC.WorldPosition(), True,
                                 False)
    OSC.prettyprint(cond.get_element())
Exemple #23
0
def test_clothoid():
    clot = OSC.Clothoid(1,0.1,10,OSC.WorldPosition(),0,1)
    OSC.prettyprint(clot.get_element())
    clot = OSC.Clothoid(1,0.1,10,OSC.WorldPosition())
    OSC.prettyprint(clot.get_element())
Exemple #24
0
def test_worldposition_noinput():
    pos = OSC.WorldPosition()
    pos.get_attributes()
    p = pos.get_element()
    OSC.prettyprint(p)
Exemple #25
0
def test_teleport():
    teleport = OSC.TeleportAction(OSC.WorldPosition())
    OSC.prettyprint(teleport.get_element())