示例#1
0
def test_controller():
    prop = OSC.Properties()
    prop.add_property('mything','2')
    prop.add_property('theotherthing','true')

    cnt = OSC.Controller('mycontroler',prop)
    OSC.prettyprint(cnt.get_element())
示例#2
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())
示例#3
0
def test_assign_controller_action():
    prop = OSC.Properties()
    prop.add_property('mything', '2')
    prop.add_property('theotherthing', 'true')

    cnt = OSC.Controller('mycontroller', prop)

    aca = OSC.AssignControllerAction(cnt)
    OSC.prettyprint(aca.get_element())
示例#4
0
def test_trafficdefinition():
    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)

    OSC.prettyprint(traffic.get_element())
示例#5
0
def test_controller_in_Entities():
    bb = OSC.BoundingBox(2,5,1.5,1.5,0,0.2)
    fa = OSC.Axle(2,2,2,1,1)
    ba = OSC.Axle(1,1,2,1,1)
    veh = OSC.Vehicle('mycar',OSC.VehicleCategory.car,bb,fa,ba,150,10,10)

    prop = OSC.Properties()
    prop.add_property('mything','2')
    prop.add_property('theotherthing','true')

    cnt = OSC.Controller('mycontroler',prop)


    entities = OSC.Entities()
    entities.add_scenario_object('Ego',veh)
    entities.add_scenario_object('Target_1',veh,cnt)
    entities.add_entity_bytype('Target_2',OSC.ObjectType.vehicle)
    entities.add_entity_byref('Target_3','something')
    OSC.prettyprint(entities.get_element())


    
    OSC.prettyprint(veh.get_element())
示例#6
0
fa = pyoscx.Axel(30, 0.8, 1.68, 2.98, 0.4)
ba = pyoscx.Axel(30, 0.8, 1.68, 0, 0.4)
red_veh = pyoscx.Vehicle('car_red', pyoscx.VehicleCategory.car, bb, fa, ba, 69,
                         10, 10)

red_veh.add_property_file('../models/car_red.osgb')
red_veh.add_property('model_id', '2')

## create entities

egoname = 'Ego'
targetname = 'Target'
prop = pyoscx.Properties()
prop.add_property(name="esminiController", value="SumoController")
prop.add_file("../sumo_inputs/e6mini.sumocfg")
cont = pyoscx.Controller('mycontroler', prop)
cont.dump_to_catalog('Controller.xosx', 'Controller', 'controllers',
                     'Mandolin')
# pyoscx.prettyprint(cont.get_element())
pyoscx.prettyprint(cont.get_element())
entities = pyoscx.Entities()
entities.add_scenario_object(egoname, white_veh)
entities.add_scenario_object(targetname, red_veh, cont)

### create init

init = pyoscx.Init()
step_time = pyoscx.TransitionDynamics(pyoscx.DynamicsShapes.step,
                                      pyoscx.DynamicsDimension.time, 1)

egospeed = pyoscx.AbsoluteSpeedAction(10, step_time)