Skip to content

Map format

Konstantin Chayka edited this page Oct 6, 2020 · 4 revisions

Layers format

0 - tile layer

Layer format

data:
- pose: [int, int, int]
  angle: str # N,W,S,E
  type: str # straight ,curve, 3way, 4way
tile_size: float

Example

data:
- pose: [0, 0, 0]
  angle: W
  type: straight
- pose: [0, 1, 0]
  angle: W
  type: curve
- pose: [1, 1, 0]
  angle: N
  type: straight
- pose: [1, 0, 0]
  angle: S
  type: 4way
tile_size: 0.585

1 - traffic signs layer

Layer format

data:
- pose: [int, int, <slot>] or [float, float, float, float, float, float]
  tag_id: int # 1/6/etc

Example

data:
- pose: [1, 2, <slot>]
  tag_id: 1
- pose: [1.0, 1.1, 0.0, 0.0, 0.0, 0.0]
  tag_id: 6

2 - ground apriltag layer

Layer format

data:
- pose: [int, int, <slot>] or [float, float, float, float, float, float]
  tag_id: int # 152/446/etc

Example

data:
- pose: [0, 5, <slot>]
  tag_id: 152
- pose: [14.0, 10.5, 0.0, 0.5, 0.0, 0.0]
  tag_id: 446

3 - watchtower layer

Layer format

data:
- hostname: str # watchtower01
  pose: [float, float, float, float, float, float]
  camera_pose: [...]                                 # question about format/config

Example

data:
- hostname: watchtower01
  pose: [12.0, 17.3, 0.1, 0.0, 0.0, 0.0]
  camera_pose: [...]
- hostname: watchtower02
  pose: [0.5, 13.0, 0.0, 0.1, 0.0, 0.0]
  camera_pose: [...]

4 - regions layer

Layer format

data:
- tiles: 
    - [int, int]
    - [int, int]
  type: str # parking/neighborhood

Example

data:
- tiles: 
    - [2, 2]
    - [2, 1]
  type: parking
- tiles: 
    - [10, 5]
    - [10, 6]
    - [10, 7]
  type: parking

5 - actors

Layer format

data:
- kind: str
  pose: [float, float, float, float, float, float]
  ID: int/str                           # question
  # color: [int,int,int] or HEX-str     # question: config?

Example

data:
- kind: duckie
  pose: [0.1, 3.0, 0.0, 1.0, 0.5, 0.0]
  ID: 13
- kind: duckiebot/DB18
  pose: [5.0, 14.0, 0.5, 0.5, 0.0, 0.0]
  ID: 243

6 - decorations (i.e., static things)

data:
- kind: str # house/tree/etc
  pose: [float, float, float, float, float, float]
  size: float                           # question
  mesh: [str, str]                      # question

Example

data:
- kind: house
  pose: [1.0, 17.3, 0.1, 0.0, 0.0, 0.0]
  size: 1
  mesh: ['package1', 'local_path1']  
- kind: tree
  pose: [0.5, 3.0, 0.0, 0.1, 0.0, 0,0]
  size: 1
  mesh: ['package2', 'local_path2']