Implementation:CARLA simulator Carla Vehicle Doors Demo
| Knowledge Sources | |
|---|---|
| Domains | Vehicle Features, Example Scripts |
| Last Updated | 2026-02-15 05:00 GMT |
Overview
A Python example script that demonstrates CARLA's dynamic vehicle door opening/closing functionality with a rotating spectator camera.
Description
This script spawns vehicles that have the has_dynamic_doors attribute and sequentially opens and closes each door while the spectator camera orbits around the vehicle. The get_transform(vehicle, angle, d) helper computes a camera position at a given orbital angle and distance factor from the vehicle center, using the vehicle's bounding box extent to determine orbit radius and height. The main loop filters the blueprint library for vehicles with dynamic doors (or a specific blueprint), spawns each vehicle, and rotates the camera from -45 to 675 degrees. At specific angle thresholds, doors are opened and closed in sequence: FR (front-right) at 0 degrees, RR (rear-right) at 90 degrees, RL (rear-left) at 180 degrees, FL (front-left) at 270 degrees, and All doors at 360 degrees. The camera rotation speed is configurable via the --speed argument. When set to 'all', the script cycles through every vehicle with dynamic doors.
Usage
Use this script to visually verify dynamic door animations on CARLA vehicles, test the door API, or showcase vehicle model detail in demonstrations.
Code Reference
Source Location
- Repository: CARLA
- File: PythonAPI/examples/vehicle_doors_demo.py
Signature
def get_transform(vehicle, angle, d=2.5):
"""Compute orbital camera transform around a vehicle."""
def main():
"""Spawn vehicles and demonstrate door open/close sequence."""
Import
# Run as standalone script
python vehicle_doors_demo.py --blueprint all
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| --host | str | No | CARLA server IP (default: 127.0.0.1) |
| --port | int | No | CARLA server port (default: 2000) |
| -b, --blueprint | str | No | Vehicle blueprint filter or 'all' (default: all) |
| --speed | int | No | Camera rotation speed in degrees/sec (default: 60) |
Outputs
| Name | Type | Description |
|---|---|---|
| Visual demonstration | Simulation | Orbiting camera showcasing door animations |
Usage Examples
# Cycle through all vehicles with dynamic doors
# python vehicle_doors_demo.py --blueprint all --speed 60
# Test a specific vehicle
# python vehicle_doors_demo.py --blueprint vehicle.lincoln.mkz_2017