--- - module_name: carla # - CLASSES ------------------------------ classes: - class_name: Timestamp # - DESCRIPTION ------------------------ doc: > Class that contains time information for simulated data. This information is automatically retrieved as part of the carla.WorldSnapshot the client gets on every frame, but might also be used in many other situations such as a carla.Sensor retrieveing data. # - PROPERTIES ------------------------- instance_variables: - var_name: frame type: int doc: > The number of frames elapsed since the simulator was launched. - var_name: elapsed_seconds type: float var_units: seconds doc: > Simulated seconds elapsed since the beginning of the current episode. - var_name: delta_seconds type: float var_units: seconds doc: > Simulated seconds elapsed since the previous frame. - var_name: platform_timestamp type: float var_units: seconds doc: > Time register of the frame at which this measurement was taken given by the OS in seconds. # - METHODS ---------------------------- methods: - def_name: __init__ params: - param_name: frame type: int - param_name: elapsed_seconds type: float param_units: seconds - param_name: delta_seconds type: float param_units: seconds - param_name: platform_timestamp type: float param_units: seconds # -------------------------------------- - def_name: __eq__ params: - param_name: other type: carla.Timestamp param_units: seconds # -------------------------------------- - def_name: __ne__ params: - param_name: other type: carla.Timestamp param_units: seconds # -------------------------------------- - def_name: __str__ # -------------------------------------- - class_name: ActorList # - DESCRIPTION ------------------------ doc: > A class that contains every actor present on the scene and provides access to them. The list is automatically created and updated by the server and it can be returned using carla.World. # - METHODS ---------------------------- methods: - def_name: filter return: list params: - param_name: wildcard_pattern type: str doc: > Filters a list of Actors matching `wildcard_pattern` against their variable __type_id__ (which identifies the blueprint used to spawn them). Matching follows [fnmatch](https://docs.python.org/2/library/fnmatch.html) standard. # -------------------------------------- - def_name: find return: carla.Actor params: - param_name: actor_id type: int doc: > Finds an actor using its identifier and returns it or None if it is not present. # -------------------------------------- - def_name: __getitem__ return: carla.Actor params: - param_name: pos type: int doc: > Returns the actor corresponding to `pos` position in the list. # -------------------------------------- - def_name: __iter__ doc: > Iterate over the carla.Actor contained in the list. # -------------------------------------- - def_name: __len__ return: int doc: > Returns the amount of actors listed. # -------------------------------------- - def_name: __str__ return: str doc: > Parses to the ID for every actor listed. # -------------------------------------- - class_name: WorldSettings # - DESCRIPTION ------------------------ doc: > The simulation has some advanced configuration options that are contained in this class and can be managed using carla.World and its methods. These allow the user to choose between client-server synchrony/asynchrony, activation of "no rendering mode" and either if the simulation should run with a fixed or variable time-step. Check [this](adv_synchrony_timestep.md) out if you want to learn about it. # - PROPERTIES ------------------------- instance_variables: - var_name: synchronous_mode type: bool doc: > States the synchrony between client and server. When set to true, the server will wait for a client tick in order to move forward. It is false by default. - var_name: no_rendering_mode type: bool doc: > When enabled, the simulation will run no rendering at all. This is mainly used to avoid overhead during heavy traffic simulations. It is false by default. - var_name: fixed_delta_seconds type: float doc: > Ensures that the time elapsed between two steps of the simulation is fixed. Set this to 0.0 to work with a variable time-step, as happens by default. # - METHODS ---------------------------- methods: - def_name: __init__ params: - param_name: synchronous_mode type: bool default: False doc: > Set this to true to enable client-server synchrony. - param_name: no_rendering_mode type: bool default: False doc: > Set this to true to completely disable rendering in the simulation. - param_name: fixed_delta_seconds type: float default: 0.0 param_units: seconds doc: > Set a fixed time-step in between frames. 0.0 means variable time-step and it is the default mode. doc: > Creates an object containing desired settings that could later be applied through carla.World and its method __apply_settings()__. # -------------------------------------- - def_name: __eq__ return: bool params: - param_name: other type: carla.WorldSettings doc: > Settings to be compared with. doc: > Returns True if both objects' variables are the same. # -------------------------------------- - def_name: __ne__ return: bool params: - param_name: other type: carla.WorldSettings doc: > Settings to be compared with. doc: > Returns True if both objects' variables are different. # -------------------------------------- - def_name: __str__ return: str doc: > Parses the established settings to a string and shows them in command line. # -------------------------------------- - class_name: AttachmentType # - DESCRIPTION ------------------------ doc: > Class that defines attachment options between an actor and its parent. When spawning actors, these can be attached to another actor so their position changes accordingly. This is specially useful for sensors. The snipet in carla.World.spawn_actor shows some sensors being attached to a car when spawned. Note that the attachment type is declared as an enum within the class. # - PROPERTIES ------------------------- instance_variables: - var_name: Rigid doc: > With this fixed attatchment the object follow its parent position strictly. This is the recommended attachment to retrieve precise data from the simulation. - var_name: SpringArm doc: > An attachment that expands or retracts the position of the actor, depending on its parent. This attachment is only recommended to record videos from the simulation where a smooth movement is needed. SpringArms are an Unreal Engine component so [check the UE docs](https://docs.unrealengine.com/en-US/Gameplay/HowTo/UsingCameras/SpringArmComponents/index.html) to learn more about them.
Warning: The SpringArm attachment presents weird behaviors when an actor is spawned with a relative translation in the Z-axis (e.g. child_location = Location(0,0,2)). # -------------------------------------- - class_name: LabelledPoint # - DESCRIPTION ------------------------ doc: > Class that represent a position in space with a semantic label. # - PROPERTIES ------------------------- instance_variables: - var_name: location doc: > Position in 3D space. - var_name: label doc: > Semantic tag of the point. # -------------------------------------- - class_name: World # - DESCRIPTION ------------------------ doc: > World objects are created by the client to have a place for the simulation to happen. The world contains the map we can see, meaning the asset, not the navigation map. Navigation maps are part of the carla.Map class. It also manages the weather and actors present in it. There can only be one world per simulation, but it can be changed anytime. # - PROPERTIES ------------------------- instance_variables: - var_name: id type: int doc: > The ID of the episode associated with this world. Episodes are different sessions of a simulation. These change everytime a world is disabled or reloaded. Keeping track is useful to avoid possible issues. - var_name: debug type: carla.DebugHelper doc: > Responsible for creating different shapes for debugging. Take a look at its class to learn more about it. # - METHODS ---------------------------- methods: - def_name: apply_settings return: int params: - param_name: world_settings type: carla.WorldSettings doc: > This method applies settings contained in an object to the simulation running and returns the ID of the frame they were implemented. warning: > If synchronous mode is enabled, and there is a Traffic Manager running, this must be set to sync mode too. Read [this](adv_traffic_manager.md#synchronous-mode) to learn how to do it. # -------------------------------------- - def_name: on_tick return: int params: - param_name: callback type: carla.WorldSnapshot doc: > Function with a snapshot as compulsory parameter that will be called when the client receives a tick. doc: > This method is used in [__asynchronous__ mode](https://carla.readthedocs.io/en/latest/adv_synchrony_timestep/). It starts callbacks from the client for the function defined as `callback`, and returns the ID of the callback. The function will be called everytime the server ticks. It requires a carla.WorldSnapshot as argument, which can be retrieved from __wait_for_tick()__. Use __remove_on_tick()__ to stop the callbacks. # -------------------------------------- - def_name: remove_on_tick params: - param_name: callback_id type: callback doc: > The callback to be removed. The ID is returned when creating the callback. doc: > Stops the callback for `callback_id` started with __on_tick()__. # -------------------------------------- - def_name: tick return: int params: - param_name: seconds type: float default: 10.0 param_units: seconds doc: > Maximum time the server should wait for a tick. It is set to 10.0 by default. doc: > This method is used in [__synchronous__ mode](https://carla.readthedocs.io/en/latest/adv_synchrony_timestep/), when the server waits for a client tick before computing the next frame. This method will send the tick, and give way to the server. It returns the ID of the new frame computed by the server. note: > If no tick is received in synchronous mode, the simulation will freeze. Also, if many ticks are received from different clients, there may be synchronization issues. Please read the docs about [synchronous mode](https://carla.readthedocs.io/en/latest/adv_synchrony_timestep/) to learn more. # -------------------------------------- - def_name: wait_for_tick return: carla.WorldSnapshot params: - param_name: seconds type: float default: 10.0 param_units: seconds doc: > Maximum time the server should wait for a tick. It is set to 10.0 by default. doc: > This method is used in [__asynchronous__ mode](https://carla.readthedocs.io/en/latest/adv_synchrony_timestep/). It makes the client wait for a server tick. When the next frame is computed, the server will tick and return a snapshot describing the new state of the world. # -------------------------------------- - def_name: spawn_actor return: carla.Actor params: - param_name: blueprint type: carla.ActorBlueprint doc: > The reference from which the actor will be created. - param_name: transform type: carla.Transform doc: > Contains the location and orientation the actor will be spawned with. - param_name: attach_to type: carla.Actor default: None doc: > The parent object that the spawned actor will follow around. - param_name: attachment type: carla.AttachmentType default: Rigid doc: > Determines how fixed and rigorous should be the changes in position according to its parent object. doc: > The method will create, return and spawn an actor into the world. The actor will need an available blueprint to be created and a transform (location and rotation). It can also be attached to a parent with a certain attachment type. # -------------------------------------- - def_name: try_spawn_actor return: carla.Actor params: - param_name: blueprint type: carla.ActorBlueprint doc: > The reference from which the actor will be created. - param_name: transform type: carla.Transform doc: > Contains the location and orientation the actor will be spawned with. - param_name: attach_to type: carla.Actor default: None doc: > The parent object that the spawned actor will follow around. - param_name: attachment type: carla.AttachmentType default: Rigid doc: > Determines how fixed and rigorous should be the changes in position according to its parent object. doc: > Same as __spawn_actor()__ but returns None on failure instead of throwing an exception. # -------------------------------------- - def_name: get_actor return: carla.Actor params: - param_name: actor_id type: int doc: > Looks up for an actor by ID and returns None if not found. # -------------------------------------- - def_name: get_actors return: carla.ActorList params: - param_name: actor_ids type: list default: None doc: > The IDs of the actors being searched. By default it is set to None and returns every actor on scene. doc: > Retrieves a list of carla.Actor elements, either using a list of IDs provided or just listing everyone on stage. If an ID does not correspond with any actor, it will be excluded from the list returned, meaning that both the list of IDs and the list of actors may have different lengths. # -------------------------------------- - def_name: get_blueprint_library return: carla.BlueprintLibrary doc: > Returns a list of actor blueprints available to ease the spawn of these into the world. # -------------------------------------- - def_name: get_vehicles_light_states return: dict doc: > Returns a dict where the keys are carla.Actor IDs and the values are carla.VehicleLightState of that vehicle. # -------------------------------------- - def_name: get_level_bbs params: - param_name: actor_type type: carla.CityObjectLabel default: None doc: > Semantic tag of the elements contained in the bounding boxes that are returned. return: array(carla.BoundingBox) doc: > Returns an array of bounding boxes with location and rotation in world space. The method returns all the bounding boxes in the level by default, but the query can be filtered by semantic tags with the argument `actor_type`. # -------------------------------------- - def_name: get_lightmanager return: carla.LightManager doc: > Returns an instance of carla.LightManager that can be used to handle the lights in the scene. # -------------------------------------- - def_name: freeze_all_traffic_lights params: - param_name: frozen type: bool doc: > Freezes or unfreezes all traffic lights in the scene. Frozen traffic lights can be modified by the user but the time will not update them until unfrozen. # -------------------------------------- - def_name: reset_all_traffic_lights doc: > Resets the cycle of all traffic lights in the map to the initial state. # -------------------------------------- - def_name: get_map return: carla.Map doc: > Asks the server for the XODR containing the map file, and returns this parsed as a carla.Map. warning: > This method does call the simulation. It is expensive, and should only be called once. # -------------------------------------- - def_name: get_traffic_light return: carla.TrafficLight params: - param_name: landmark type: carla.Landmark doc: > The landmark object describing a traffic light. doc: > Provided a landmark, returns the traffic light object it describes. # -------------------------------------- - def_name: get_traffic_sign return: carla.TrafficSign params: - param_name: landmark type: carla.Landmark doc: > The landmark object describing a traffic sign. doc: > Provided a landmark, returns the traffic sign object it describes. # -------------------------------------- - def_name: get_random_location_from_navigation return: carla.Location doc: > This can only be used with walkers. It retrieves a random location to be used as a destination using the __go_to_location()__ method in carla.WalkerAIController. This location will be part of a sidewalk. Roads, crosswalks and grass zones are excluded. The method does not take into consideration locations of existing actors so if a collision happens when trying to spawn an actor, it will return an error. Take a look at [`spawn_npc.py`](https://github.com/carla-simulator/carla/blob/e73ad54d182e743b50690ca00f1709b08b16528c/PythonAPI/examples/spawn_npc.py#L179) for an example. # -------------------------------------- - def_name: get_settings return: carla.WorldSettings doc: > Returns an object containing some data about the simulation such as synchrony between client and server or rendering mode. # -------------------------------------- - def_name: get_snapshot return: carla.WorldSnapshot doc: > Returns a snapshot of the world at a certain moment comprising all the information about the actors. # -------------------------------------- - def_name: get_spectator return: carla.Actor doc: > Returns the spectator actor. The spectator is a special type of actor created by Unreal Engine, usually with ID=0, that acts as a camera and controls the view in the simulator window. # -------------------------------------- - def_name: get_weather return: carla.WeatherParameters doc: > Retrieves an object containing weather parameters currently active in the simulation, mainly cloudiness, precipitation, wind and sun position. # -------------------------------------- - def_name: set_weather params: - param_name: weather type: carla.WeatherParameters doc: > New conditions to be applied. doc: > Changes the weather parameteres ruling the simulation to another ones defined in an object. # -------------------------------------- - def_name: cast_ray return: list(carla.LabelledPoint) params: - param_name: initial_location type: carla.Location doc: > The initial position of the ray. - param_name: final_location type: carla.Location doc: > The final position of the ray. doc: > Casts a ray from the specified initial_location to final_location. The function then detects all geometries intersecting the ray and returns a list of carla.LabelledPoint in order. # -------------------------------------- - def_name: project_point return: carla.LabelledPoint params: - param_name: location type: carla.Location doc: > The point to be projected. - param_name: direction type: carla.Vector3D doc: > The direction of projection. - param_name: search_distance type: float doc: > The maximum distance to perform the projection doc: > Projects the specified point to the desired direction in the scene. The functions casts a ray from location in a direction and returns a carla.Labelled object with the first geometry this ray intersects. If no geometry is found in the search_distance range the function returns `None`. # -------------------------------------- - def_name: ground_projection return: carla.LabelledPoint params: - param_name: location type: carla.Location doc: > The point to be projected. - param_name: search_distance type: float doc: > The maximum distance to perform the projection doc: > Projects the specified point downwards in the scene. The functions casts a ray from location in the direction (0,0,-1) (downwards) and returns a carla.Labelled object with the first geometry this ray intersects (usually the ground). If no geometry is found in the search_distance range the function returns `None`. # -------------------------------------- - def_name: __str__ return: string doc: > The content of the world is parsed and printed as a brief report of its current state. # -------------------------------------- - class_name: DebugHelper # - DESCRIPTION ------------------------ doc: > Helper class part of carla.World that defines methods for creating debug shapes. By default, shapes last one second. They can be permanent, but take into account the resources needed to do so. Take a look at the snipets available for this class to learn how to debug easily in CARLA. # - METHODS ---------------------------- methods: - def_name: draw_arrow params: - param_name: begin type: carla.Location param_units: meters doc: > Point in the coordinate system where the arrow starts. - param_name: end type: carla.Location param_units: meters doc: > Point in the coordinate system where the arrow ends and points towards to. - param_name: thickness type: float default: 0.1 param_units: meters doc: > Density of the line. - param_name: arrow_size type: float default: 0.1 param_units: meters doc: > Size of the tip of the arrow. - param_name: color type: carla.Color default: (255,0,0) doc: > RGB code to color the object. Red by default. - param_name: life_time type: float default: -1.0 param_units: seconds doc: > Shape's lifespan. By default it only lasts one frame. Set this to 0 for permanent shapes. doc: > Draws an arrow from `begin` to `end` pointing in that direction. # -------------------------------------- - def_name: draw_box params: - param_name: box type: carla.BoundingBox doc: > Object containing a location and the length of a box for every axis. - param_name: rotation type: carla.Rotation param_units: degrees (pitch,yaw,roll) doc: > Orientation of the box according to Unreal Engine's axis system. - param_name: thickness type: float default: 0.1 param_units: meters doc: > Density of the lines that define the box. - param_name: color type: carla.Color default: (255,0,0) doc: > RGB code to color the object. Red by default. - param_name: life_time type: float default: -1.0 param_units: seconds doc: > Shape's lifespan. By default it only lasts one frame. Set this to 0 for permanent shapes. doc: > Draws a box, ussually to act for object colliders. # -------------------------------------- - def_name: draw_line params: - param_name: begin type: carla.Location param_units: meters doc: > Point in the coordinate system where the line starts. - param_name: end type: carla.Location param_units: meters doc: > Spot in the coordinate system where the line ends. - param_name: thickness type: float default: 0.1 param_units: meters doc: > Density of the line. - param_name: color type: carla.Color default: (255,0,0) doc: > RGB code to color the object. Red by default. - param_name: life_time type: float default: -1.0 param_units: seconds doc: > Shape's lifespan. By default it only lasts one frame. Set this to 0 for permanent shapes. doc: > Draws a line in between `begin` and `end`. # -------------------------------------- - def_name: draw_point params: - param_name: location type: carla.Location param_units: meters doc: > Spot in the coordinate system to center the object. - param_name: size type: float default: 0.1 param_units: meters doc: > Density of the point. - param_name: color type: carla.Color default: (255,0,0) doc: > RGB code to color the object. Red by default. - param_name: life_time type: float default: -1.0 param_units: seconds doc: > Shape's lifespan. By default it only lasts one frame. Set this to 0 for permanent shapes. doc: > Draws a point `location`. # -------------------------------------- - def_name: draw_string params: - param_name: location type: carla.Location param_units: meters doc: > Spot in the simulation where the text will be centered. - param_name: text type: str doc: > Text intended to be shown in the world. - param_name: draw_shadow type: bool default: False doc: > Casts a shadow for the string that could help in visualization. It is disabled by default. - param_name: color type: carla.Color default: (255,0,0) doc: > RGB code to color the string. Red by default. - param_name: life_time type: float default: -1.0 param_units: seconds doc: > Shape's lifespan. By default it only lasts one frame. Set this to 0 for permanent shapes. doc: > Draws a string in a given location of the simulation which can only be seen server-side. # -------------------------------------- ...