440 lines
14 KiB
YAML
440 lines
14 KiB
YAML
---
|
|
- module_name: carla
|
|
|
|
# - CLASSES ------------------------------
|
|
classes:
|
|
- class_name: VehicleControl
|
|
# - DESCRIPTION ------------------------
|
|
doc: >
|
|
Manages the basic movement of a vehicle using typical driving controls.
|
|
# - PROPERTIES -------------------------
|
|
instance_variables:
|
|
- var_name: throttle
|
|
type: float
|
|
doc: >
|
|
A scalar value to control the vehicle throttle [0.0, 1.0]. Default is 0.0.
|
|
# --------------------------------------
|
|
- var_name: steer
|
|
type: float
|
|
doc: >
|
|
A scalar value to control the vehicle steering [-1.0, 1.0]. Default is 0.0.
|
|
# --------------------------------------
|
|
- var_name: brake
|
|
type: float
|
|
doc: >
|
|
A scalar value to control the vehicle brake [0.0, 1.0]. Default is 0.0.
|
|
# --------------------------------------
|
|
- var_name: hand_brake
|
|
type: bool
|
|
doc: >
|
|
Determines whether hand brake will be used. Default is <b>False</b>.
|
|
# --------------------------------------
|
|
- var_name: reverse
|
|
type: bool
|
|
doc: >
|
|
Determines whether the vehicle will move backwards. Default is <b>False</b>.
|
|
# --------------------------------------
|
|
- var_name: manual_gear_shift
|
|
type: bool
|
|
doc: >
|
|
Determines whether the vehicle will be controlled by changing gears manually. Default is <b>False</b>.
|
|
# --------------------------------------
|
|
- var_name: gear
|
|
type: int
|
|
doc: >
|
|
States which gear is the vehicle running on.
|
|
|
|
# - METHODS ----------------------------
|
|
methods:
|
|
- def_name: __init__
|
|
params:
|
|
- param_name: throttle
|
|
type: float
|
|
default: 0.0
|
|
- param_name: steer
|
|
type: float
|
|
default: 0.0
|
|
- param_name: brake
|
|
type: float
|
|
default: 0.0
|
|
- param_name: hand_brake
|
|
type: bool
|
|
default: False
|
|
- param_name: reverse
|
|
type: bool
|
|
default: False
|
|
- param_name: manual_gear_shift
|
|
type: bool
|
|
default: False
|
|
- param_name: gear
|
|
type: int
|
|
default: 0
|
|
# --------------------------------------
|
|
- def_name: __eq__
|
|
params:
|
|
- param_name: other
|
|
type: carla.VehicleControl
|
|
# --------------------------------------
|
|
- def_name: __ne__
|
|
params:
|
|
- param_name: other
|
|
type: carla.VehicleControl
|
|
# --------------------------------------
|
|
- def_name: __str__
|
|
# --------------------------------------
|
|
|
|
- class_name: WalkerControl
|
|
doc: >
|
|
This class defines specific directions that can be commanded to a carla.Walker to control it via script. The walker's animations will blend automatically with the parameters defined in this class when applied, though specific skeleton moves can be obtained through class.WalkerBoneControl.
|
|
|
|
AI control can be settled for walkers, but the control used to do so is carla.WalkerAIController.
|
|
|
|
# - PROPERTIES -------------------------
|
|
instance_variables:
|
|
- var_name: direction
|
|
type: carla.Vector3D
|
|
doc: >
|
|
Vector using global coordinates that will correspond to the direction of the walker.
|
|
# --------------------------------------
|
|
- var_name: speed
|
|
type: float
|
|
doc: >
|
|
A scalar value to control the walker's speed.
|
|
# --------------------------------------
|
|
- var_name: jump
|
|
type: bool
|
|
doc: >
|
|
If <b>True</b>, the walker will perform a jump.
|
|
|
|
# - METHODS ----------------------------
|
|
methods:
|
|
- def_name: __init__
|
|
params:
|
|
- param_name: direction
|
|
default: [1.0, 0.0, 0.0]
|
|
type: carla.Vector3D
|
|
- param_name: speed
|
|
default: 0.0
|
|
type: float
|
|
- param_name: jump
|
|
default: False
|
|
type: bool
|
|
# --------------------------------------
|
|
- def_name: __eq__
|
|
params:
|
|
- param_name: other
|
|
type: carla.WalkerControl
|
|
doc: >
|
|
Compares every variable with `other` and returns <b>True</b> if these are all the same.
|
|
# --------------------------------------
|
|
- def_name: __ne__
|
|
params:
|
|
- param_name: other
|
|
type: carla.WalkerControl
|
|
doc: >
|
|
Compares every variable with `other` and returns <b>True</b> if any of these differ.
|
|
# --------------------------------------
|
|
- def_name: __str__
|
|
# --------------------------------------
|
|
|
|
- class_name: WalkerBoneControl
|
|
# - DESCRIPTION ------------------------
|
|
doc: >
|
|
This class grants bone specific manipulation for walker. The skeletons of walkers have been unified for clarity and the transform applied to each bone are always relative to its parent. Take a look [here](tuto_G_control_walker_skeletons.md) to learn more on how to create a walker and define its movement.
|
|
# - PROPERTIES -------------------------
|
|
instance_variables:
|
|
- var_name: bone_transforms
|
|
type: list([name,transform])
|
|
doc: >
|
|
List of tuples where the first value is the bone's name and the second value stores the transformation (changes in location and rotation) that will be applied to it.
|
|
# - METHODS ----------------------------
|
|
methods:
|
|
- def_name: __init__
|
|
params:
|
|
- param_name: 'list(name,transform)'
|
|
type: tuple
|
|
doc: >
|
|
Intializes an object containing moves to be applied on tick. These are listed with the name of the bone and the transform that will be applied to it.
|
|
# --------------------------------------
|
|
- def_name: __str__
|
|
# --------------------------------------
|
|
|
|
- class_name: GearPhysicsControl
|
|
# - DESCRIPTION ------------------------
|
|
doc: >
|
|
Class that provides access to vehicle transmission details by defining a gear and when to run on it. This will be later used by carla.VehiclePhysicsControl to help simulate physics.
|
|
# - PROPERTIES -------------------------
|
|
instance_variables:
|
|
- var_name: ratio
|
|
type: float
|
|
doc: >
|
|
The transmission ratio of the gear.
|
|
# --------------------------------------
|
|
- var_name: down_ratio
|
|
type: float
|
|
doc: >
|
|
Quotient between current RPM and MaxRPM where the autonomous gear box should shift down.
|
|
# --------------------------------------
|
|
- var_name: up_ratio
|
|
type: float
|
|
doc: >
|
|
Quotient between current RPM and MaxRPM where the autonomous gear box should shift up.
|
|
# - METHODS ----------------------------
|
|
methods:
|
|
- def_name: __init__
|
|
params:
|
|
- param_name: ratio
|
|
type: float
|
|
default: 1.0
|
|
- param_name: down_ratio
|
|
type: float
|
|
default: 0.5
|
|
- param_name: up_ratio
|
|
type: float
|
|
default: 0.65
|
|
# --------------------------------------
|
|
- def_name: __eq__
|
|
params:
|
|
- param_name: other
|
|
type: carla.GearPhysicsControl
|
|
# --------------------------------------
|
|
- def_name: __ne__
|
|
params:
|
|
- param_name: other
|
|
type: carla.GearPhysicsControl
|
|
# --------------------------------------
|
|
- def_name: __str__
|
|
# --------------------------------------
|
|
|
|
- class_name: VehiclePhysicsControl
|
|
doc: >
|
|
Summarizes the parameters that will be used to simulate a carla.Vehicle as a physical object. The specific settings for the wheels though are stipulated using carla.WheelPhysicsControl.
|
|
|
|
# - PROPERTIES -------------------------
|
|
instance_variables:
|
|
- var_name: torque_curve
|
|
type: list(carla.Vector2D)
|
|
doc: >
|
|
Curve that indicates the torque measured in Nm for a specific RPM of the vehicle's engine.
|
|
# --------------------------------------
|
|
- var_name: max_rpm
|
|
type: float
|
|
doc: >
|
|
The maximum RPM of the vehicle's engine.
|
|
# --------------------------------------
|
|
- var_name: moi
|
|
type: float
|
|
doc: >
|
|
The moment of inertia of the vehicle's engine.
|
|
# --------------------------------------
|
|
- var_name: damping_rate_full_throttle
|
|
type: float
|
|
doc: >
|
|
Damping ratio when the throttle is maximum.
|
|
# --------------------------------------
|
|
- var_name: damping_rate_zero_throttle_clutch_engaged
|
|
type: float
|
|
doc: >
|
|
Damping ratio when the throttle is zero with clutch engaged.
|
|
# --------------------------------------
|
|
- var_name: damping_rate_zero_throttle_clutch_disengaged
|
|
type: float
|
|
doc: >
|
|
Damping ratio when the throttle is zero with clutch disengaged.
|
|
# --------------------------------------
|
|
- var_name: use_gear_autobox
|
|
type: bool
|
|
doc: >
|
|
If <b>True</b>, the vehicle will have an automatic transmission.
|
|
# --------------------------------------
|
|
- var_name: gear_switch_time
|
|
type: float
|
|
doc: >
|
|
Switching time between gears.
|
|
# --------------------------------------
|
|
- var_name: clutch_strength
|
|
type: float
|
|
doc: >
|
|
The clutch strength of the vehicle in Kgm^2/s.
|
|
# --------------------------------------
|
|
- var_name: final_ratio
|
|
type: float
|
|
doc: >
|
|
The fixed ratio from transmission to wheels.
|
|
# --------------------------------------
|
|
- var_name: forward_gears
|
|
type: list(carla.GearPhysicsControl)
|
|
doc: >
|
|
List of objects defining the vehicle's gears.
|
|
# --------------------------------------
|
|
- var_name: mass
|
|
type: float
|
|
doc: >
|
|
The mass of the vehicle in Kg.
|
|
# --------------------------------------
|
|
- var_name: drag_coefficient
|
|
type: float
|
|
doc: >
|
|
Drag coefficient of the vehicle's chassis.
|
|
# --------------------------------------
|
|
- var_name: center_of_mass
|
|
type: carla.Vector3D
|
|
doc: >
|
|
The center of mass of the vehicle.
|
|
# --------------------------------------
|
|
- var_name: steering_curve
|
|
type: list(carla.Vector2D)
|
|
doc: >
|
|
Curve that indicates the maximum steering for a specific forward speed.
|
|
# --------------------------------------
|
|
- var_name: wheels
|
|
type: list(carla.WheelPhysicsControl)
|
|
doc: >
|
|
List of wheel physics objects. This list should have 4 elements, where index 0 corresponds to the front left wheel, index 1 corresponds to the front right wheel, index 2 corresponds to the back left wheel and index 3 corresponds to the back right wheel. For 2 wheeled vehicles, set the same values for both front and back wheels.
|
|
|
|
# - METHODS ----------------------------
|
|
methods:
|
|
- def_name: __init__
|
|
params:
|
|
- param_name: torque_curve
|
|
default: [[0.0,500.0], [5000.0, 500.0]]
|
|
type: list(carla.Vector2D)
|
|
- param_name: max_rpm
|
|
default: 5000.0
|
|
type: float
|
|
- param_name: moi
|
|
default: 1.0
|
|
type: float
|
|
- param_name: damping_rate_full_throttle
|
|
default: 0.15
|
|
type: float
|
|
- param_name: damping_rate_zero_throttle_clutch_engaged
|
|
default: 2.0
|
|
type: float
|
|
- param_name: damping_rate_zero_throttle_clutch_disengaged
|
|
default: 0.35
|
|
type: float
|
|
- param_name: use_gear_autobox
|
|
default: True
|
|
type: bool
|
|
- param_name: gear_switch_time
|
|
default: 0.5
|
|
type: float
|
|
- param_name: clutch_strength
|
|
default: 10.0
|
|
type: float
|
|
- param_name: final_ratio
|
|
default: 4.0
|
|
type: float
|
|
- param_name: forward_gears
|
|
default: list()
|
|
type: list(carla.GearPhysicsControl)
|
|
- param_name: mass
|
|
default: 1000.0
|
|
- param_name: drag_coefficient
|
|
default: 0.3
|
|
type: float
|
|
- param_name: center_of_mass
|
|
default: [0.0, 0.0, 0.0]
|
|
type: carla.Vector3D
|
|
- param_name: steering_curve
|
|
default: [[0.0, 1.0],[10.0, 0.5]]
|
|
type: carla.Vector2D
|
|
- param_name: wheels
|
|
default: list()
|
|
type: list(carla.WheelPhysicsControl)
|
|
doc: >
|
|
VehiclePhysicsControl constructor
|
|
# --------------------------------------
|
|
- def_name: __eq__
|
|
params:
|
|
- param_name: other
|
|
type: carla.VehiclePhysicsControl
|
|
# --------------------------------------
|
|
- def_name: __ne__
|
|
params:
|
|
- param_name: other
|
|
type: carla.VehiclePhysicsControl
|
|
# --------------------------------------
|
|
- def_name: __str__
|
|
# --------------------------------------
|
|
|
|
- class_name: WheelPhysicsControl
|
|
doc: >
|
|
Class that defines specific physical parameters for wheel objects that will be part of a carla.VehiclePhysicsControl to simulate vehicle it as a material object.
|
|
# - PROPERTIES -------------------------
|
|
instance_variables:
|
|
- var_name: tire_friction
|
|
type: float
|
|
doc: >
|
|
A scalar value that indicates the friction of the wheel.
|
|
# --------------------------------------
|
|
- var_name: damping_rate
|
|
type: float
|
|
doc: >
|
|
Damping rate of the wheel.
|
|
# --------------------------------------
|
|
- var_name: max_steer_angle
|
|
type: float
|
|
doc: >
|
|
Maximum angle in degrees that the wheel can steer.
|
|
# --------------------------------------
|
|
- var_name: radius
|
|
type: float
|
|
doc: >
|
|
Radius of the wheel in centimeters.
|
|
# --------------------------------------
|
|
- var_name: max_brake_torque
|
|
type: float
|
|
doc: >
|
|
Maximum brake torque in Nm.
|
|
# --------------------------------------
|
|
- var_name: max_handbrake_torque
|
|
type: float
|
|
doc: >
|
|
Maximum handbrake torque in Nm.
|
|
# --------------------------------------
|
|
- var_name: position
|
|
type: carla.Vector3D
|
|
doc: >
|
|
World position of the wheel. This is a read-only parameter.
|
|
# - METHODS ----------------------------
|
|
methods:
|
|
- def_name: __init__
|
|
params:
|
|
- param_name: tire_friction
|
|
default: 2.0
|
|
type: float
|
|
- param_name: damping_rate
|
|
default: 0.25
|
|
type: float
|
|
- param_name: max_steer_angle
|
|
default: 70.0
|
|
type: float
|
|
- param_name: radius
|
|
default: 30.0
|
|
type: float
|
|
- param_name: max_brake_torque
|
|
default: 1500.0
|
|
type: float
|
|
- param_name: max_handbrake_torque
|
|
default: 3000.0
|
|
type: float
|
|
- param_name: position
|
|
default: (0.0,0.0,0.0)
|
|
type: carla.Vector3D
|
|
# --------------------------------------
|
|
- def_name: __eq__
|
|
params:
|
|
- param_name: other
|
|
type: carla.WheelPhysicsControl
|
|
# --------------------------------------
|
|
- def_name: __ne__
|
|
params:
|
|
- param_name: other
|
|
type: carla.WheelPhysicsControl
|
|
# --------------------------------------
|
|
- def_name: __str__
|
|
# --------------------------------------
|
|
...
|