Screen#

Introduction#

The Screen category includes blocks that allow your VEX IQ (2nd generation) robot to display text, values, and graphics on the Brain’s built-in screen. These blocks can be used to print sensor data, create custom interfaces, or draw visual elements like lines, shapes, and text with adjustable styles and colors.

Below is a list of available blocks:

Print – Display text and values on the Brain.

Settings – Configure screen display properties.

Draw – Create shapes and graphics on the Brain screen.

Print#

print#

The print block displays text on the Brain’s screen at the current cursor position and font.

    print [VEXcode] on screen ▶

Parameters

Description

value

The text, number, or variable value to display.

expanding arrow

Expand the block to read and set cursor to next row and make the cursor move to the next row after this block.

Example

    when started :: hat events
    [Display a message at the starting cursor position.]
    print [Hello, Robot!] on screen ◀ and set cursor to next row

A top-down view of a VEX IQ robot within a blue circular diagram showing cardinal directions. The robot is facing upward (0°). The diagram indicates 90° to the right, 180° at the bottom, and 270° to the left. The robot has orange and gray components, with "VEX3" visible on its front panel. Wheels are visible on both sides of the robot.

set cursor to row column#

When using the set cursor to row column block, the cursor is placed at a specific row and column on the Brain’s screen. How many rows and columns can comfortably fit depends on the selected font.

Monospaced fonts have characters that are all the same width, making text placement consistent. In contrast, proportional fonts vary in character width, so some letters take up more space than others. However, regardless of which type is used, the set cursor to row column block positions the cursor based on row and column size, not font style. The font size can be adjusted using the set font block.

Set cursor stack block#
    set cursor to row [1] column [1] on screen

Parameters

Description

row

The row of the cursor.

column

The column of the cursor.

Example

    when started :: hat events
    [Repeatedly print the current timer at Row 1 Column 1]
    forever
    print (timer in seconds) on screen ◀ and set cursor to next row
    wait (1) seconds
    clear screen
    set cursor to row (1) column (1) on screen

alt-text

set cursor to next row#

The set cursor to next row block moves the cursor to column 1 on the next row on the Brain’s screen.

    set cursor to next row on screen

Example

    when started :: hat events
    [Display two lines of text.]
    print [Line 1] on screen ▶
    set cursor to next row on screen
    print [Line 2] on screen ◀ and set cursor to next row

alt-text

clear row#

The clear row block is used to clear a single row on the Brain’s screen.

    clear row (1) on screen

Parameters

Description

row

The row number to clear.

Example

    when started :: hat events
    [Display text on two rows, but only keep one.]
    print [This text stays] on screen ◀ and set cursor to next row
    print [This disappears] on screen ◀ and set cursor to next row
    wait (3) seconds
    clear row (2) on screen

cursor column#

The cursor column block returns the column number where text will be printed as an integer.

cursor column reporter block#
    (cursor column)

Example

When started, moves the cursor to row 3, column 2 on the screen and prints the current cursor column number.#
    when started :: hat events
    [Display the cursor's current column.]
    set cursor to row [3] column [2] on screen
    print (cursor column) on screen ▶

cursor row#

The cursor row block returns the row number where text will be printed as an integer.

cursor row reporter block#
    (cursor row)

Example

When started, moves the cursor to row 6, column 2 on the screen and prints the current cursor row number.#
    when started :: hat events
    [Display the cursor's current row.]
    set cursor to row [3] column [2] on screen
    print (cursor row) on screen ▶

Settings#

clear screen#

The clear screen block clears all text from the Brain’s screen.

    clear screen

Example

    when started :: hat events
    [Fill the screen, then clear it after 2 seconds.]
    repeat (5)
    print [Line] on screen ◀ and set cursor to next row
    end
    wait (3) seconds
    clear screen

set font#

The set font block sets the font and size used for displaying text on the robot’s screen. This font will apply to all subsequently printed text.

    set font to [monospaced v] [medium v] on screen

Parameters

Description

font

The font to use:

  • monospaced
  • proportional

size

The size to use:

  • extra small
  • small
  • medium
  • large
  • extra large
  • super large

A screen titled MONO 12 shows full digit and alphabet lines with a note of 26 across and 9 rows.
Mono Extra Small

A screen labeled MONO 15 displays two lines of characters and indicates 20 across and 7 rows.
Mono Small

A screen titled MONO 20 displays digits and uppercase letters followed by 16 across and 5 rows.
Mono Medium

A screen labeled MONO 30 shows two lines of digits followed by the text 3 rows.
Mono Large

A screen titled MONO 40 displays the numbers 12345678 underneath in a monospaced font.
Mono Extra Large

A screen shows MN60 in large white text on a black background.
Mono Super Large

A screen titled PROP 20 displays multiple lines of digits and uppercase letters, followed by 26 across and 5 rows.
Prop Medium

A screen labeled PROP 30 shows a line of digits and the equation 18 x 3 beneath it.
Prop Large

A screen shows PROP 40 with the line 14 x 2 beneath it in white text on a black background.
Prop Extra Large

A screen displays PROP 60 in large white text on a black background with no additional content.
Prop Super Large

Example

    when started :: hat events
    [Display two different fonts on separate lines.]
    set font to [monospaced v] [medium v] on screen
    print [Mono Medium] on screen ◀ and set cursor to next row
    set font to [proportional v] [medium v] on screen
    print [Prop Medium] on screen ◀ and set cursor to next row

alt-text

set print precision#

The set print precision block sets the precision formatting used for displaying numbers on the Brain’s screen. This print precision will apply to all subsequently printed numbers.

    set print precision to [0.1 v] on screen

Parameters

Description

precision

Sets the print precision to:

  • 1
  • 0.1
  • 0.01
  • 0.001
  • All Digits

Example

    when started :: hat events
    [Print 1/3 as 0.33.]
    set print precision to [0.01 v] on screen
    print ([1] / [3]) on screen ◀ and set cursor to next row

alt-text

set pen width#

The set pen width block sets the pen width used for drawing lines and shapes.

    set pen width to [10] on screen

Parameters

Description

width

The pen width in pixels in a range from 0 to 32.

Example

    when started :: hat events
    [Draw two circles with different pen widths.]
    draw circle (40) (70) (20) on screen
    set pen width to (5) on screen
    draw circle (100) (70) (20) on screen

alt-text

set pen color#

The set pen color block sets the pen color used for drawing lines, shapes, and text on the Brain’s screen.

    set pen / font color to [red v] on screen

Parameters

Description

color

Sets the pen color to:

  • red
  • green
  • blue
  • white
  • yellow
  • orange
  • purple
  • red violet
  • violet
  • blue violet
  • blue green
  • yellow green
  • yellow orange
  • red orange

Example

    when started :: hat events
    [Draw two rectangles with different colors.]
    draw rectangle (100) (50) (10) (20) on screen
    set pen / font color to [blue v] on screen
    draw rectangle (50) (50) (10) (20) on screen

alt-text

set fill color#

The set fill color block sets the fill color used when shapes are drawn.

    set fill color to [red v] on screen

Parameters

Description

color

Sets the fill color to:

  • red
  • green
  • blue
  • white
  • yellow
  • orange
  • purple
  • red violet
  • violet
  • blue violet
  • blue green
  • yellow green
  • yellow orange
  • red orange

Example

    when started :: hat events
    [Draw a yellow circle.]
    set fill color to [yellow v] on screen
    draw circle (50) (50) (20) on screen

alt-text

Draw#

draw pixel#

The draw pixel block draws a pixel at the specified (x, y) screen coordinate in the current pen color.

    draw pixel [0] [0] on screen

Parameters

Description

x

The x-coordinate to draw the pixel.

y

The y-coordinate to draw the pixel.

Example

    when started :: hat events
    [Draw one pixel at the center of the screen.]
    draw pixel (80) (50) on screen

alt-text

draw line#

The draw line block draws a line from the first specified screen coordinate (x1, y1) to the second specified screen coordinate (x2, y2) using the current pen width and pen color.

    draw line [0] [0] [159] [107] on screen

Parameters

Description

x1

The x-coordinate in pixels of the start of the line.

y1

The y-coordinate in pixels of the start of the line.

x2

The x-coordinate in pixels of the end of the line.

y2

The y-coordinate in pixels of the end of the line.

Example

    when started :: hat events
    [Draw a line from the top left to bottom right of the screen.]
    draw line (0) (0) (159) (107) on screen

alt-text

draw rectangle#

The draw rectangle block draws a rectangle using the current pen width, pen color, and fill colors.

    draw rectangle [0] [0] [10] [10] on screen

Parameters

Description

x

The x-coordinate in pixels of the top-left corner of the rectangle.

y

The y-coordinate in pixels of the top-left corner of the rectangle.

width

The width of the rectangle in pixels.

height

The height of the rectangle in pixels.

Example

    when started :: hat events
    [Draw a rectangle on the screen.]
    draw rectangle (25) (25) (100) (50) on screen

alt-text

draw circle#

The draw circle block draws a circle using the current pen width, pen color, and fill colors.

    draw circle [0] [0] [10] on screen

Parameters

Description

x

The x-coordinate in pixels of the center of the circle.

y

The y-coordinate in pixels of the center of the circle.

radius

The radius of the circle in pixels.

Example

    when started :: hat events
    [Draw a circle on the screen.]
    draw circle (80) (50) (20) on screen

alt-text