In [1]:
using AutomotiveDrivingModels
using AutoViz
using Reactive, Interact
using AutoUrban
using VirtualTestDrive


WARNING: Method definition copy!(Array{Float64, 1}, AutomotiveDrivingModels.LatLonAccel) in module AutomotiveDrivingModels at /home/eric/.julia/v0.6/AutomotiveDrivingModels/src/2d/actions/lat_lon_accel.jl:13 overwritten in module AutoUrban at /home/eric/.julia/v0.6/AutoUrban/src/simulation/actions.jl:10.

In [2]:
using Reactive, Interact
#Need a same roadway in VTD
scene = Frame(Entity{VehicleState, BicycleModel, Int},100)
timeStep = 0.05
models = Dict{Int, DriverModel}()
roadway = gen_stadium_roadway(2)


Out[2]:

In [3]:
connection,entries=VirtualTestDrive.initialize();
for i in 1:length(entries[3])
    (x,y,heading,v)=(entries[3][i].base.pos.x,entries[3][i].base.pos.y,entries[3][i].base.pos.h,sqrt(entries[3][i].ext.speed.x^2+entries[3][i].ext.speed.y^2))
    push!(scene,Entity(VehicleState(VecSE2(x,y,heading), roadway, v), 
        BicycleModel(VehicleDef(AgentClass.CAR, 4.826, 1.81)),i))
    models[i]=MultiPtsTurningDriver(timeStep,v_max=5.0,v_min=0.0,turning_direction=1)
    excute_action!(models[i],0.0,0,scene, roadway, i)
end
actions = get_actions!(Array{Any}(length(scene)), scene, roadway, models)
render(scene, roadway,cam=FitToContentCamera())


Out[3]:

In [4]:
entries


Out[4]:
16-element Array{Any,1}:
 RDB_START_OF_FRAME_t:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_OBJECT_CFG_t:
   id:       1
   category: 1
   thetype:  1
   modelId:  1
   name: ['A', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   modelName: ['A', 'u', 'd', 'i', ' ', 'A', '3', ' ', '-', ' '  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   fileName: ['1', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   flags:    1
   spare0:   0
   spare1:   0
, RDB_OBJECT_CFG_t:
   id:       2
   category: 1
   thetype:  1
   modelId:  1
   name: ['B', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   modelName: ['A', 'u', 'd', 'i', ' ', 'A', '3', ' ', '-', ' '  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   fileName: ['1', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   flags:    1
   spare0:   0
   spare1:   0
, RDB_OBJECT_CFG_t:
   id:       3
   category: 1
   thetype:  1
   modelId:  1
   name: ['C', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   modelName: ['A', 'u', 'd', 'i', ' ', 'A', '3', ' ', '-', ' '  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   fileName: ['1', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   flags:    1
   spare0:   0
   spare1:   0
, RDB_OBJECT_CFG_t:
   id:       4
   category: 1
   thetype:  1
   modelId:  1
   name: ['D', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   modelName: ['A', 'u', 'd', 'i', ' ', 'A', '3', ' ', '-', ' '  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   fileName: ['1', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   flags:    1
   spare0:   0
   spare1:   0
, RDB_OBJECT_CFG_t:
   id:       5
   category: 1
   thetype:  1
   modelId:  1
   name: ['E', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   modelName: ['A', 'u', 'd', 'i', ' ', 'A', '3', ' ', '-', ' '  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   fileName: ['1', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'  …  '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0']
   flags:    1
   spare0:   0
   spare1:   0
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_OBJECT_STATE_t:
   base: RDB_OBJECT_STATE_BASE_t
   ext:  RDB_OBJECT_STATE_EXT_t
, RDB_OBJECT_STATE_t:
   base: RDB_OBJECT_STATE_BASE_t
   ext:  RDB_OBJECT_STATE_EXT_t
, RDB_OBJECT_STATE_t:
   base: RDB_OBJECT_STATE_BASE_t
   ext:  RDB_OBJECT_STATE_EXT_t
, RDB_OBJECT_STATE_t:
   base: RDB_OBJECT_STATE_BASE_t
   ext:  RDB_OBJECT_STATE_EXT_t
, RDB_OBJECT_STATE_t:
   base: RDB_OBJECT_STATE_BASE_t
   ext:  RDB_OBJECT_STATE_EXT_t
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_VEHICLE_SYSTEMS_t:
   playerId:            1
   lightMask:           0
   steering:            +0.0000000000000000e+00
   steeringWheelTorque: +0.0000000000000000e+00
   accMask:             0
   accSpeed:            0
   batteryState:        0
   batteryRate:         0
   displayLightMask:    0
   spare0:              0
   spare:               (0, 0, 0, 0, 0)
, RDB_VEHICLE_SYSTEMS_t:
   playerId:            2
   lightMask:           0
   steering:            +0.0000000000000000e+00
   steeringWheelTorque: +0.0000000000000000e+00
   accMask:             0
   accSpeed:            0
   batteryState:        0
   batteryRate:         0
   displayLightMask:    0
   spare0:              0
   spare:               (0, 0, 0, 0, 0)
, RDB_VEHICLE_SYSTEMS_t:
   playerId:            3
   lightMask:           0
   steering:            +0.0000000000000000e+00
   steeringWheelTorque: +0.0000000000000000e+00
   accMask:             0
   accSpeed:            0
   batteryState:        0
   batteryRate:         0
   displayLightMask:    0
   spare0:              0
   spare:               (0, 0, 0, 0, 0)
, RDB_VEHICLE_SYSTEMS_t:
   playerId:            4
   lightMask:           0
   steering:            +0.0000000000000000e+00
   steeringWheelTorque: +0.0000000000000000e+00
   accMask:             0
   accSpeed:            0
   batteryState:        0
   batteryRate:         0
   displayLightMask:    0
   spare0:              0
   spare:               (0, 0, 0, 0, 0)
, RDB_VEHICLE_SYSTEMS_t:
   playerId:            5
   lightMask:           0
   steering:            +2.1783344447612762e-01
   steeringWheelTorque: +0.0000000000000000e+00
   accMask:             0
   accSpeed:            0
   batteryState:        0
   batteryRate:         0
   displayLightMask:    0
   spare0:              0
   spare:               (0, 0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_VEHICLE_SETUP_t:
   playerId:  1
   mass:      +1.5600000000000000e+03
   wheelBase: +2.5910000801086426e+00
   spare:     (0, 0, 0, 0)
, RDB_VEHICLE_SETUP_t:
   playerId:  2
   mass:      +1.5600000000000000e+03
   wheelBase: +2.5910000801086426e+00
   spare:     (0, 0, 0, 0)
, RDB_VEHICLE_SETUP_t:
   playerId:  3
   mass:      +1.5600000000000000e+03
   wheelBase: +2.5910000801086426e+00
   spare:     (0, 0, 0, 0)
, RDB_VEHICLE_SETUP_t:
   playerId:  4
   mass:      +1.5600000000000000e+03
   wheelBase: +2.5910000801086426e+00
   spare:     (0, 0, 0, 0)
, RDB_VEHICLE_SETUP_t:
   playerId:  5
   mass:      +1.5600000000000000e+03
   wheelBase: +2.5910000801086426e+00
   spare:     (0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_ENGINE_t:
   base: RDB_ENGINE_BASE_t
   ext:  RDB_ENGINE_EXT_t
, RDB_ENGINE_t:
   base: RDB_ENGINE_BASE_t
   ext:  RDB_ENGINE_EXT_t
, RDB_ENGINE_t:
   base: RDB_ENGINE_BASE_t
   ext:  RDB_ENGINE_EXT_t
, RDB_ENGINE_t:
   base: RDB_ENGINE_BASE_t
   ext:  RDB_ENGINE_EXT_t
, RDB_ENGINE_t:
   base: RDB_ENGINE_BASE_t
   ext:  RDB_ENGINE_EXT_t
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_CAMERA_t:
   id:         1
   width:      320
   height:     258
   spare0:     0
   clipNear:   +1.0000000000000000e+00
   clipFar:    +1.5000000000000000e+03
   focalX:     +1.1196152343750000e+03
   focalY:     +1.1196152343750000e+03
   principalX: +4.0000000000000000e+02
   principalY: +3.0000000000000000e+02
   pos:        RDB_COORD_t
   spare1:     (0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_DRIVER_CTRL_t:
   playerId:        1
   steeringWheel:   +0.0000000000000000e+00
   steeringSpeed:   +0.0000000000000000e+00
   throttlePedal:   +0.0000000000000000e+00
   brakePedal:      +0.0000000000000000e+00
   clutchPedal:     +0.0000000000000000e+00
   accelTgt:        +0.0000000000000000e+00
   steeringTgt:     +0.0000000000000000e+00
   curvatureTgt:    +0.0000000000000000e+00
   steeringTorque:  +0.0000000000000000e+00
   engineTorqueTgt: +0.0000000000000000e+00
   speedTgt:        +0.0000000000000000e+00
   gear:            4
   sourceId:        0
   spare0:          (0, 0)
   validityFlags:   40e2
   flags:           0
   mockupInput0:    0
   mockupInput1:    0
   mockupInput2:    0
   spare:           0
, RDB_DRIVER_CTRL_t:
   playerId:        2
   steeringWheel:   +0.0000000000000000e+00
   steeringSpeed:   +0.0000000000000000e+00
   throttlePedal:   +0.0000000000000000e+00
   brakePedal:      +0.0000000000000000e+00
   clutchPedal:     +0.0000000000000000e+00
   accelTgt:        +0.0000000000000000e+00
   steeringTgt:     +0.0000000000000000e+00
   curvatureTgt:    +0.0000000000000000e+00
   steeringTorque:  +0.0000000000000000e+00
   engineTorqueTgt: +0.0000000000000000e+00
   speedTgt:        +0.0000000000000000e+00
   gear:            4
   sourceId:        0
   spare0:          (0, 0)
   validityFlags:   40e2
   flags:           0
   mockupInput0:    0
   mockupInput1:    0
   mockupInput2:    0
   spare:           0
, RDB_DRIVER_CTRL_t:
   playerId:        3
   steeringWheel:   +0.0000000000000000e+00
   steeringSpeed:   +0.0000000000000000e+00
   throttlePedal:   +0.0000000000000000e+00
   brakePedal:      +0.0000000000000000e+00
   clutchPedal:     +0.0000000000000000e+00
   accelTgt:        +0.0000000000000000e+00
   steeringTgt:     +0.0000000000000000e+00
   curvatureTgt:    +0.0000000000000000e+00
   steeringTorque:  +0.0000000000000000e+00
   engineTorqueTgt: +0.0000000000000000e+00
   speedTgt:        +0.0000000000000000e+00
   gear:            4
   sourceId:        0
   spare0:          (0, 0)
   validityFlags:   40e2
   flags:           0
   mockupInput0:    0
   mockupInput1:    0
   mockupInput2:    0
   spare:           0
, RDB_DRIVER_CTRL_t:
   playerId:        4
   steeringWheel:   +0.0000000000000000e+00
   steeringSpeed:   +0.0000000000000000e+00
   throttlePedal:   +0.0000000000000000e+00
   brakePedal:      +0.0000000000000000e+00
   clutchPedal:     +0.0000000000000000e+00
   accelTgt:        +0.0000000000000000e+00
   steeringTgt:     +0.0000000000000000e+00
   curvatureTgt:    +0.0000000000000000e+00
   steeringTorque:  +0.0000000000000000e+00
   engineTorqueTgt: +0.0000000000000000e+00
   speedTgt:        +0.0000000000000000e+00
   gear:            4
   sourceId:        0
   spare0:          (0, 0)
   validityFlags:   40e2
   flags:           0
   mockupInput0:    0
   mockupInput1:    0
   mockupInput2:    0
   spare:           0
, RDB_DRIVER_CTRL_t:
   playerId:        5
   steeringWheel:   +0.0000000000000000e+00
   steeringSpeed:   +0.0000000000000000e+00
   throttlePedal:   +0.0000000000000000e+00
   brakePedal:      +0.0000000000000000e+00
   clutchPedal:     +0.0000000000000000e+00
   accelTgt:        -1.0239766406250000e+05
   steeringTgt:     +2.1783344447612762e-01
   curvatureTgt:    +0.0000000000000000e+00
   steeringTorque:  +0.0000000000000000e+00
   engineTorqueTgt: +0.0000000000000000e+00
   speedTgt:        +0.0000000000000000e+00
   gear:            4
   sourceId:        0
   spare0:          (0, 0)
   validityFlags:   40e2
   flags:           0
   mockupInput0:    0
   mockupInput1:    0
   mockupInput2:    0
   spare:           0
]
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_DRIVER_PERCEPTION_t:
   playerId:       1
   speedFromRules: +2.0000000000000000e+01
   distToSpeed:    +0.0000000000000000e+00
   spare0:         (0, 0, 0, 0)
   flags:          0
   spare:          (0, 0, 0, 0)
, RDB_DRIVER_PERCEPTION_t:
   playerId:       2
   speedFromRules: +2.0000000000000000e+01
   distToSpeed:    +0.0000000000000000e+00
   spare0:         (0, 0, 0, 0)
   flags:          0
   spare:          (0, 0, 0, 0)
, RDB_DRIVER_PERCEPTION_t:
   playerId:       3
   speedFromRules: +2.0000000000000000e+01
   distToSpeed:    +0.0000000000000000e+00
   spare0:         (0, 0, 0, 0)
   flags:          0
   spare:          (0, 0, 0, 0)
, RDB_DRIVER_PERCEPTION_t:
   playerId:       4
   speedFromRules: +2.0000000000000000e+01
   distToSpeed:    +0.0000000000000000e+00
   spare0:         (0, 0, 0, 0)
   flags:          0
   spare:          (0, 0, 0, 0)
, RDB_DRIVER_PERCEPTION_t:
   playerId:       5
   speedFromRules: +2.7777778625488281e+01
   distToSpeed:    -1.0000000000000000e+00
   spare0:         (0, 0, 0, 0)
   flags:          0
   spare:          (0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_ENVIRONMENT_t:
   visibility:    +1.0000000000000000e+05
   timeOfDay:     9ab0
   brightness:    +9.6666663885116577e-01
   precipitation: 0
   cloudState:    1
   flags:         0
   spare1:        (0, 0, 0, 0, 0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_CUSTOM_SCORING_t:
   playerId:    1
   pathS:       +0.0000000000000000e+00
   roadS:       +1.6841409683227539e+01
   fuelCurrent: +0.0000000000000000e+00
   fuelAverage: +0.0000000000000000e+00
   stateFlags:  0
   slip:        +0.0000000000000000e+00
   spare:       (0, 0, 0, 0)
, RDB_CUSTOM_SCORING_t:
   playerId:    2
   pathS:       +0.0000000000000000e+00
   roadS:       +3.3588401794433594e+01
   fuelCurrent: +0.0000000000000000e+00
   fuelAverage: +0.0000000000000000e+00
   stateFlags:  0
   slip:        +0.0000000000000000e+00
   spare:       (0, 0, 0, 0)
, RDB_CUSTOM_SCORING_t:
   playerId:    3
   pathS:       +0.0000000000000000e+00
   roadS:       +4.5692699432373047e+01
   fuelCurrent: +0.0000000000000000e+00
   fuelAverage: +0.0000000000000000e+00
   stateFlags:  0
   slip:        +0.0000000000000000e+00
   spare:       (0, 0, 0, 0)
, RDB_CUSTOM_SCORING_t:
   playerId:    4
   pathS:       +0.0000000000000000e+00
   roadS:       +3.7612414550781250e+02
   fuelCurrent: +0.0000000000000000e+00
   fuelAverage: +0.0000000000000000e+00
   stateFlags:  0
   slip:        +0.0000000000000000e+00
   spare:       (0, 0, 0, 0)
, RDB_CUSTOM_SCORING_t:
   playerId:    5
   pathS:       +0.0000000000000000e+00
   roadS:       +1.0597499847412109e+01
   fuelCurrent: +0.0000000000000000e+00
   fuelAverage: +0.0000000000000000e+00
   stateFlags:  0
   slip:        +0.0000000000000000e+00
   spare:       (0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_ROAD_STATE_t:
   playerId:     1
   wheelId:      -1
   spare0:       0
   spare1:       0
   roadId:       2
   defaultSpeed: +2.7777778625488281e+01
   waterLevel:   +0.0000000000000000e+00
   eventMask:    0
   spare2:       (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
, RDB_ROAD_STATE_t:
   playerId:     2
   wheelId:      -1
   spare0:       0
   spare1:       0
   roadId:       2
   defaultSpeed: +2.7777778625488281e+01
   waterLevel:   +0.0000000000000000e+00
   eventMask:    0
   spare2:       (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
, RDB_ROAD_STATE_t:
   playerId:     3
   wheelId:      -1
   spare0:       0
   spare1:       0
   roadId:       2
   defaultSpeed: +2.7777778625488281e+01
   waterLevel:   +0.0000000000000000e+00
   eventMask:    0
   spare2:       (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
, RDB_ROAD_STATE_t:
   playerId:     4
   wheelId:      -1
   spare0:       0
   spare1:       0
   roadId:       2
   defaultSpeed: +2.7777778625488281e+01
   waterLevel:   +0.0000000000000000e+00
   eventMask:    0
   spare2:       (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
, RDB_ROAD_STATE_t:
   playerId:     5
   wheelId:      -1
   spare0:       0
   spare1:       0
   roadId:       2
   defaultSpeed: +2.7777778625488281e+01
   waterLevel:   +0.0000000000000000e+00
   eventMask:    0
   spare2:       (0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_ROAD_POS_t:
   playerId:   1
   roadId:     2
   laneId:     1
   flags:      1
   roadS:      +1.6841409683227539e+01
   roadT:      +5.5638562887907028e-02
   laneOffset: -6.9436144828796387e-01
   hdgRel:     +0.0000000000000000e+00
   pitchRel:   +0.0000000000000000e+00
   rollRel:    +0.0000000000000000e+00
   roadType:   1
   spare1:     0
   spare2:     0
   pathS:      +0.0000000000000000e+00
, RDB_ROAD_POS_t:
   playerId:   2
   roadId:     2
   laneId:     -2
   flags:      1
   roadS:      +3.3588401794433594e+01
   roadT:      -2.8862700462341309e+00
   laneOffset: -6.3626998662948608e-01
   hdgRel:     +0.0000000000000000e+00
   pitchRel:   +0.0000000000000000e+00
   rollRel:    +0.0000000000000000e+00
   roadType:   1
   spare1:     0
   spare2:     0
   pathS:      +0.0000000000000000e+00
, RDB_ROAD_POS_t:
   playerId:   3
   roadId:     2
   laneId:     1
   flags:      1
   roadS:      +4.5692699432373047e+01
   roadT:      +1.9341999292373657e-01
   laneOffset: -5.5658000707626343e-01
   hdgRel:     +0.0000000000000000e+00
   pitchRel:   +0.0000000000000000e+00
   rollRel:    +0.0000000000000000e+00
   roadType:   1
   spare1:     0
   spare2:     0
   pathS:      +0.0000000000000000e+00
, RDB_ROAD_POS_t:
   playerId:   4
   roadId:     2
   laneId:     -1
   flags:      1
   roadS:      +3.7612414550781250e+02
   roadT:      -2.9980534687638283e-02
   laneOffset: +7.2001945972442627e-01
   hdgRel:     +2.9734183044638485e-06
   pitchRel:   +0.0000000000000000e+00
   rollRel:    +0.0000000000000000e+00
   roadType:   1
   spare1:     0
   spare2:     0
   pathS:      +0.0000000000000000e+00
, RDB_ROAD_POS_t:
   playerId:   5
   roadId:     2
   laneId:     -2
   flags:      1
   roadS:      +1.0597499847412109e+01
   roadT:      -2.8865900039672852e+00
   laneOffset: -6.3659000396728516e-01
   hdgRel:     +0.0000000000000000e+00
   pitchRel:   +0.0000000000000000e+00
   rollRel:    +0.0000000000000000e+00
   roadType:   1
   spare1:     0
   spare2:     0
   pathS:      +0.0000000000000000e+00
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_LANE_INFO_t:
   roadId:       2
   id:           -3
   neighborMask: 2
   leftLaneId:   -2
   rightLaneId:  127
   borderType:   0
   material:     0
   status:       0
   thetype:      1
   width:        +1.5000000000000000e+00
   curvVert:     +0.0000000000000000e+00
   curvVertDot:  -0.0000000000000000e+00
   curvHor:      +0.0000000000000000e+00
   curvHorDot:   -0.0000000000000000e+00
   playerId:     5
   spare1:       0
, RDB_LANE_INFO_t:
   roadId:       2
   id:           -2
   neighborMask: 7
   leftLaneId:   -1
   rightLaneId:  -3
   borderType:   0
   material:     0
   status:       0
   thetype:      1
   width:        +1.5000000000000000e+00
   curvVert:     +0.0000000000000000e+00
   curvVertDot:  -0.0000000000000000e+00
   curvHor:      +0.0000000000000000e+00
   curvHorDot:   -0.0000000000000000e+00
   playerId:     5
   spare1:       0
, RDB_LANE_INFO_t:
   roadId:       2
   id:           -1
   neighborMask: 6
   leftLaneId:   1
   rightLaneId:  -2
   borderType:   0
   material:     0
   status:       0
   thetype:      1
   width:        +1.5000000000000000e+00
   curvVert:     +0.0000000000000000e+00
   curvVertDot:  -0.0000000000000000e+00
   curvHor:      +0.0000000000000000e+00
   curvHorDot:   -0.0000000000000000e+00
   playerId:     5
   spare1:       0
, RDB_LANE_INFO_t:
   roadId:       2
   id:           1
   neighborMask: 4
   leftLaneId:   127
   rightLaneId:  -1
   borderType:   0
   material:     0
   status:       0
   thetype:      1
   width:        +1.5000000000000000e+00
   curvVert:     +0.0000000000000000e+00
   curvVertDot:  -0.0000000000000000e+00
   curvHor:      +0.0000000000000000e+00
   curvHorDot:   -0.0000000000000000e+00
   playerId:     5
   spare1:       0
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
 VirtualTestDrive.RDB_PACKAGE_ELEMENT[RDB_SYNC_t:
   mask:       0
   cmdMask:    0
   systemTime: +1.5010927867771809e+09
]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
 RDB_END_OF_FRAME_t:
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 

In [5]:
function updateScene!(entries,scene)
    actions_VTD = []
    for i in 1:length(entries[3])
        veh = scene[i]
        (x,y,heading,v)=(entries[3][i].base.pos.x,entries[3][i].base.pos.y,entries[3][i].base.pos.h,sqrt(entries[3][i].ext.speed.x^2+entries[3][i].ext.speed.y^2))
        posG = VecSE2(x,y,heading)
        posF = Frenet(posG, roadway)
        state = VehicleState(posG,posF,v)
        scene[i] = Entity(state, veh.def, veh.id)
        steering=entries[4][i].steering
        acc=sqrt.(entries[3][i].ext.accel.x^2+entries[3][i].ext.accel.y^2)
        if entries[3][i].ext.accel.x*cos(heading)+entries[3][i].ext.accel.y*sin(heading)<0
            acc=-acc
        end  
        push!(actions_VTD,AccelSteeringAngle(acc,steering))
    end
    tick!(scene,roadway,actions_VTD,timeStep)
end


Out[5]:
updateScene! (generic function with 1 method)

In [6]:
function get_udp_entries(models)
    udp_entries = Array{VirtualTestDrive.RDB_PACKAGE_ELEMENT}(0)
    for key = keys(models)
        udp_entry=VirtualTestDrive.create_udp_entry(VirtualTestDrive.RDB_DRIVER_CTRL_t,convert(UInt32,key),
            accelTgt=convert(Cfloat,models[key].siji.acc),steeringTgt=convert(Cfloat,models[key].siji.steer),
            validityFlags=convert(UInt32,VirtualTestDrive.RDB_DRIVER_INPUT_VALIDITY_TGT_ACCEL | VirtualTestDrive.RDB_DRIVER_INPUT_VALIDITY_TGT_STEERING | VirtualTestDrive.RDB_DRIVER_INPUT_VALIDITY_ADD_ON))
        push!(udp_entries,udp_entry)
    end
    #println(udp_entries)
    return udp_entries
end


Out[6]:
get_udp_entries (generic function with 1 method)

In [7]:
function drawsim(t)
    udp_entries = get_udp_entries(models)
    #print(udp_entries)
    entries=VirtualTestDrive.processOneFrame_continuous(connection,udp_entries);
    updateScene!(entries,scene)
    for (i,veh) in enumerate(scene)
        if veh.state.v < 5.0
            excute_action!(models[i],5.0,0,scene, roadway, i)
            AutomotiveDrivingModels.observe!(models[veh.id], scene, roadway, veh.id)
        else
            excute_action!(models[i],0.0,0,scene, roadway, i)
            AutomotiveDrivingModels.observe!(models[veh.id], scene, roadway, veh.id)
        end
        AutomotiveDrivingModels.observe!(models[veh.id], scene, roadway, veh.id)
    end
    #render(scene, roadway,models,cam=SceneFollowCamera(10.0))
    render(scene, roadway, models, cam=FitToContentCamera())
end
framerate=40
ticks = fps(framerate)
timestamps = map(_ -> time(), ticks)
map(drawsim, timestamps)


WARNING: Compat.ASCIIString is deprecated, use String instead.
  likely near /home/eric/.julia/v0.6/IJulia/src/kernel.jl:31
WARNING: Compat.ASCIIString is deprecated, use String instead.
  likely near /home/eric/.julia/v0.6/IJulia/src/kernel.jl:31
WARNING: Compat.ASCIIString is deprecated, use String instead.
  likely near /home/eric/.julia/v0.6/IJulia/src/kernel.jl:31
WARNING: Compat.ASCIIString is deprecated, use String instead.
  likely near /home/eric/.julia/v0.6/IJulia/src/kernel.jl:31
Out[7]:
WARNING: Compat.ASCIIString is deprecated, use String instead.
  likely near /home/eric/.julia/v0.6/IJulia/src/kernel.jl:31
WARNING: Compat.ASCIIString is deprecated, use String instead.
  likely near /home/eric/.julia/v0.6/IJulia/src/kernel.jl:31

In [ ]: