Camera Layout

Updated: May 06, 2022

The camera layout is the layout used by a camera viewer.

Specifying camera layouts is optional. You may leave out specifying this in your configuration file. However, if you're specifying them, you can define one or more camera layouts. The name of each camera layout must follow the format: camera_layout_number where number must be 1 for the first camera layout you define, and each subsequent layout you specify, number is incremented by one. For example:

...
    "camera_layout_1": [
        {
            "input": "forward_camera",
            "theta": 100,
            "rotations": {
                "yaw": 0,
                "pitch": 0,
                "roll": 0
            },
            "source_type": "texture",
            "destination_type": "full_screen"
        }
    ],
    "camera_layout_2": [
        {
            "input": "rear_camera",
            "theta": 100,
            "rotations": {
                "yaw": 0,
                "pitch": 0,
                "roll": 0
            },
            "source_type": "texture",
            "destination_type": "full_screen"
        }
    ],
...
           

Attributes:

There are the properties that you can use to configure a camera layout.

destination or destination_type
(Required) Set destination_type to full_screen to show the texture at full size. Otherwise, set destination to a list of 2D vertexes that describe the layout. You must specify one of either destination_type or destination properties.
input
(Required) The input that this camera layout applies to. What you specify as this property must correspond to the id of one of the entries in your input array. This input must also be a camera. For example, if in your input array, you have this entry:
...
    "input": [
        {
            "source": "sensor",            
            "instance": "SENSOR_UNIT_1",
            "id": "forward_camera"
        },
        ...
     ]
...
                        
then you can specify forward_camera as the input property of your camera layout.
rotations
(Optional) The orientation at which to output the video. The rotations property is defined by the following data:
  • yaw
  • pitch
  • roll
For example:
...
    "rotations": {
         "yaw": 0,
         "pitch": 0,
         "roll": 0
     },
...
                        
If not specified, the default is 0 for all of yaw, pitch, and roll.
theta
(Required) The angle in the range [-359..359] degrees at which to output the video.
source or source_type
(Required) Set source_type to texture to overlay a default texture. Otherwise, set source to a list of 2D vertexes that describe the layout. You must specify one of either source_type or source properties.