Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:CARLA simulator Carla Map API Spec

From Leeroopedia
Revision as of 12:13, 16 February 2026 by Admin (talk | contribs) (Auto-imported from implementations/CARLA_simulator_Carla_Map_API_Spec.md)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Knowledge Sources
Domains Simulation, Mapping, API Specification
Last Updated 2026-02-15 05:00 GMT

Overview

YML specification file that defines map and road-related classes in the CARLA Python API, including LaneType, LaneChange, LaneMarkingColor, LaneMarkingType, Map, Waypoint, and related enums.

Description

This YML file specifies the map system classes that provide road network information based on the OpenDRIVE 1.4 standard. LaneType enumerates lane types (Driving, Stop, Shoulder, Biking, Sidewalk, Parking, etc.). LaneChange defines turn permissions (NONE, Right, Left, Both). LaneMarkingColor and LaneMarkingType define lane marking appearance per the OpenDRIVE standard (Solid, Broken, SolidSolid, etc.). The Map class provides access to the road topology, spawn points, waypoints, and crosswalks. Waypoint represents a point on a lane with properties for lane width, road_id, section_id, lane_id, junction status, and methods to navigate the road network (next(), previous(), get_right_lane(), get_left_lane()).

Usage

Use these classes when working with CARLA's road network, pathfinding, navigation, and traffic rule systems. The Map is accessed via world.get_map() and provides the foundation for autonomous driving route planning.

Code Reference

Source Location

  • Repository: CARLA
  • File: PythonAPI/docs/map.yml

Signature

- module_name: carla
  classes:
  - class_name: LaneType
    instance_variables:
    - var_name: NONE
    - var_name: Driving
    - var_name: Stop
    - var_name: Shoulder
    - var_name: Biking
    - var_name: Sidewalk
    - var_name: Parking
    - var_name: Any

  - class_name: LaneChange
    instance_variables:
    - var_name: NONE
    - var_name: Right
    - var_name: Left
    - var_name: Both

  - class_name: LaneMarkingColor
    instance_variables:
    - var_name: Standard
    - var_name: Blue
    - var_name: White
    - var_name: Yellow

  - class_name: LaneMarkingType
    instance_variables:
    - var_name: NONE
    - var_name: Broken
    - var_name: Solid
    - var_name: SolidSolid
    - var_name: SolidBroken
    - var_name: BrokenSolid

Import

import carla
world = client.get_world()
carla_map = world.get_map()
waypoint = carla_map.get_waypoint(location)

I/O Contract

Class Type Description
LaneType enum OpenDRIVE lane types (Driving, Sidewalk, Parking, etc.)
LaneChange enum Lane change permissions (NONE, Right, Left, Both)
LaneMarkingColor enum Lane marking colors (Standard, Blue, White, Yellow)
LaneMarkingType enum Marking patterns (Solid, Broken, SolidSolid, etc.)
Map class Road network topology and waypoint access
Waypoint class Point on a lane with navigation methods

Usage Examples

import carla

client = carla.Client('localhost', 2000)
world = client.get_world()
carla_map = world.get_map()

# Get spawn points
spawn_points = carla_map.get_spawn_points()

# Get waypoint at a location
wp = carla_map.get_waypoint(spawn_points[0].location)
print(f"Road ID: {wp.road_id}, Lane ID: {wp.lane_id}")
print(f"Lane type: {wp.lane_type}")
print(f"Is junction: {wp.is_junction}")

# Navigate the road network
next_wps = wp.next(2.0)  # Get waypoints 2 meters ahead
left_lane = wp.get_left_lane()
right_lane = wp.get_right_lane()

# Get topology
topology = carla_map.get_topology()

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment