Écran#

Introduction#

Les méthodes d’affichage contrôlent la manière dont le V5 Brain affiche le texte, les chiffres et les graphiques sur son écran tactile, et la manière dont il réagit aux entrées tactiles.

Par défaut, la police d’impression pour le Cerveau est monospaced small qui comporte 12 lignes et 48 colonnes.

Pour le dessin, la résolution du Cerveau est de 480 x 240 pixels.

Écran V5 Brain avec grille rouge indiquant la disposition de 12 lignes et 48 colonnes. Dimensions : 479 pixels de large sur 239 pixels de haut. Coin supérieur gauche : (0,0) pixels, ligne 1, colonne 1 ; coin inférieur droit : (479, 239) pixels, ligne 12, colonne 48.

Vous trouverez ci-dessous la liste de toutes les méthodes :

Impression du curseur — Placez et imprimez du texte.

  • print — Affiche du texte, des nombres ou des valeurs de variables à la position actuelle du curseur.

  • set_cursor — Déplace le curseur vers une ligne et une colonne spécifiques.

  • next_row — Déplace le curseur à la colonne 1 de la ligne suivante.

  • clear_row — Efface une ligne de texte.

  • row — Renvoie la ligne où le texte sera imprimé.

  • column — Renvoie la colonne dans laquelle le texte sera imprimé.

  • print_at — Affiche du texte, des nombres ou des valeurs de variables à une coordonnée x et y spécifique.

  • get_string_width — Renvoie la largeur d’une chaîne en pixels en utilisant la police actuelle.

  • get_string_height — Renvoie la hauteur d’une chaîne en pixels en utilisant la police actuelle.

  • clear_line — Efface une ligne de texte.

  • new_line — Déplace le curseur vers une nouvelle ligne.

Modificateurs — Modifient les paramètres d’écran, les couleurs et le comportement de dessin.

  • clear_screen — Efface l’écran de tous les dessins et textes.

  • set_font — Définit la police du texte imprimé.

  • set_pen_width — Définit l’épaisseur des lignes dessinées et des contours des formes.

  • set_pen_color — Définit la couleur du texte, des pixels, des lignes et des contours des formes.

  • set_fill_color — Définit la couleur de remplissage des formes dessinées et des arrière-plans de texte imprimés.

  • set_origin — Définit l’origine utilisée pour l’impression et le dessin basés sur les coordonnées.

Dessiner — Ajouter des éléments graphiques à l’écran.

  • draw_pixel — Dessine un pixel à une coordonnée.

  • draw_line — Trace une ligne entre deux points.

  • draw_rectangle — Dessine un rectangle.

  • draw_circle — Dessine un cercle.

  • render — Met à jour l’écran du Cerveau avec du texte et des dessins uniquement lorsqu’il est appelé.

  • set_clip_region — Limite l’endroit où les dessins et le texte peuvent apparaître.

Getters — Vérifie l’état et la position du toucher.

  • pressing — Renvoie si l’écran est pressé.

  • x_position — Renvoie la coordonnée x du dernier appui sur l’écran.

  • y_position — Renvoie la coordonnée y du dernier appui sur l’écran.

Rappels — Répondre aux événements tactiles sur l’écran.

  • pressed — Enregistre une fonction à appeler lorsque l’écran est pressé.

  • released — Enregistre une fonction à appeler lorsque l’écran est libéré.

Pour plus d’informations sur la construction d’un Cerveau pour accéder aux méthodes de l’écran screen , voir Cerveau.

Impression du curseur#

print#

print imprime du texte, des nombres ou des valeurs variables sur l’écran Brain à la position actuelle du curseur et avec la police actuelle.

Usage:

brain.screen.print(text, sep, precision)

Paramètres

Description

text

Le texte, le nombre ou la valeur de la variable à imprimer.

sep

Facultatif. Une chaîne de caractères à insérer entre les valeurs. Doit être écrite comme un argument nommé (sep=). La valeur par défaut est “”.

precision

Facultatif. Nombre de décimales à afficher lors de l’impression de nombres simples. Doit être spécifié comme argument nommé (precision=). La valeur par défaut est 2.

# Print on the Brain's screen
brain.screen.print("Hello, Robot!")

Capture d'écran du V5 Brain montrant « Hello Robot » imprimé en blanc dans le coin supérieur gauche de l'écran.

set_cursor#

set_cursor moves the cursor to a specific row and column on the Brain screen. The next print call will start printing at that location. How many rows and columns can comfortably fit depends on the selected font. With the default monospaced medium font, up to 8 rows and 13 columns can be displayed clearly. Text placed beyond this range may be cut off or become difficult to read.

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, set_cursor positions the cursor based on row and column size, not font style. The font size can be adjusted using the set_font.

Usage:

brain.screen.set_cursor(row, column)

Paramètres

Description

row

La ligne sur laquelle déplacer le curseur.

column

La colonne vers laquelle déplacer le curseur.

# Display text starting at Row 3 Column 12
brain.screen.set_cursor(3, 12)
brain.screen.print("Row 3, Column 12")

Capture d'écran du V5 Brain montrant la ligne 3, colonne 12 imprimée dans la partie supérieure, près du centre de l'écran, à cet emplacement.

next_row#

next_row déplace le curseur à la ligne suivante.

Usage:

brain.screen.next_row()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Print two lines of text on the Brain's screen
brain.screen.print("Line 1")
brain.screen.next_row()
brain.screen.print("Line 2")

Capture d'écran de l'interface V5 Brain montrant deux lignes de texte blanc dans le coin supérieur gauche. La première ligne indique « Ligne 1 » et la seconde, juste en dessous, indique « Ligne 2 ».

clear_row#

clear_row efface une seule ligne de texte sur l’écran Brain.

Usage:

brain.screen.clear_row(row, color)

Paramètres

Description

row

Facultatif. La ligne à effacer. Par défaut, il s’agit de la ligne actuellement sélectionnée par le curseur.

color

Facultatif. Une couleur valide, une valeur hexadécimale ou une chaîne web.

# Only keep the text on row 1
brain.screen.print("This text stays")
brain.screen.next_row
brain.screen.print("This text disappears")
wait(3, SECONDS)

brain.screen.clear_row()

row#

La ligne row renvoie la ligne où le texte sera imprimé sous forme d’entier.

Usage:

brain.screen.row()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Display the cursor's current row
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.row())

Capture d'écran de V5 Brain montrant le texte 3 en blanc dans le quadrant supérieur gauche de l'écran, à la position ligne 3 colonne 2.

column#

La colonne column renvoie la colonne dans laquelle le texte sera imprimé sous forme d’entier.

Usage:

brain.screen.column()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Display the cursor's current column
brain.screen.set_cursor(3, 15)
brain.screen.print(brain.screen.column())

Capture d'écran de V5 Brain montrant le texte 15 en blanc dans le quadrant supérieur gauche de l'écran, à la position 15 de la ligne 3 et de la colonne 15.

get_string_width#

get_string_width returns the width of a string in pixels as an integer, using the current font.

Usage:
brain.screen.get_string_width(string)

Paramètres

Description

string

La corde à mesurer.

get_string_height#

get_string_height returns the height of a string in pixels as an integer, using the current font.

Usage:
brain.screen.get_string_height(string)

Paramètres

Description

string

La corde à mesurer.

clear_line#

clear_line efface la ligne de texte actuelle.

Usage: brain.screen.clear_line()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

new_line#

new_line déplace le curseur à la colonne 1 de la ligne suivante sur l’écran Cerveau.

Usage:

brain.screen.new_line()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

Mutateurs#

clear_screen#

clear_screen efface tous les dessins et textes de l’écran Cerveau.

Usage:

brain.screen.clear_screen(color)

Paramètres

Description

color

Optionnel. Couleurs possibles :

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.BLACK (Par défaut)
  • Color.WHITE

# Print VEXcode on the screen
brain.screen.print("VEXcode")
wait(2, SECONDS)
# Clear screen to black
brain.screen.clear_screen()

# Print VEXcode on the screen
brain.screen.print("VEXcode")

# Clear screen to blue using predefined color
brain.screen.clear_screen(Color.BLUE)

Capture d'écran de l'interface V5 Brain avec toute la zone imprimable en bleu vif.

set_font#

La commande set_font définit la police utilisée pour l’affichage du texte sur l’écran Brain. Cette police sera appliquée à tout le texte imprimé après l’exécution de cette méthode.

Usage:

brain.screen.set_font(font)

Paramètres

Description

font

Voici une option de police valide.

Capture d'écran de l'interface V5 Brain avec des chiffres et des lettres imprimés en blanc dans le coin supérieur gauche, en police MONO 12. On y voit AZ sur une seule ligne, occupant environ un quart de la largeur de l'écran. Dans le coin inférieur gauche, il est indiqué 80 colonnes et 20 lignes.
FontType.MONO12

La même image que la précédente, avec la police Mono 15. Elle affiche AZ sur une seule ligne, occupant presque la moitié de la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 68 colonnes et 16 lignes.
FontType.MONO15

La même image que la précédente, avec la police Mono 20. Elle affiche AZ sur une seule ligne, occupant près des deux tiers de la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 48 colonnes et 12 lignes.
FontType.MONO20

La même image que la précédente, avec la police Mono 30. Elle affiche AZ sur une seule ligne, occupant presque toute la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 32 colonnes et 8 lignes.
FontType.MONO30

La même image que la précédente, avec la police Mono 40. Elle affiche AX sur une seule ligne, occupant toute la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 24 colonnes et 6 lignes.
FontType.MONO40

La même image que la précédente, avec la police Mono 60. Elle affiche AP sur une seule ligne, occupant toute la largeur de l'écran. En bas, on peut lire 16 colonnes et 4 lignes.
FontType.MONO60

La même image que la précédente, avec la police Prop 20. Elle affiche AZ sur une seule ligne, occupant près des deux tiers de la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 48 colonnes et 12 lignes.
FontType.PROP20

La même image que la précédente, avec la police Prop 30. Elle affiche AZ sur une seule ligne, occupant presque toute la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 32 colonnes et 8 lignes.
FontType.PROP30

La même image que la précédente, avec la police Prop 40. Elle affiche AU sur une seule ligne, occupant toute la largeur de l'écran. Dans le coin inférieur gauche, on peut lire 24 colonnes et 6 lignes.
FontType.PROP40

La même image que la précédente, avec la police Prop 60. Elle affiche AN sur une seule ligne, occupant toute la largeur de l'écran. En bas, on peut lire 15 colonnes et 4 lignes.
FontType.PROP60

# Set the font type to MONO40
brain.screen.set_font(FontType.MONO40)
brain.screen.print("VEX")

Une capture d'écran de l'écran V5 Brain affiche VEX en blanc dans le coin supérieur gauche, dans une police plus grande que par défaut.

set_pen_width#

set_pen_width définit l’épaisseur des lignes dessinées et des contours des formes.

Usage:

brain.screen.set_pen_width(value)

Paramètres

Description

value

La largeur du stylo, en pixels, de 0 à 32.

# Draw a rectangle with a pen width of 10
brain.screen.set_pen_width(10)
brain.screen.draw_rectangle(50, 50, 130, 60)

Capture d'écran de V5 Brain montrant un rectangle à bordures épaisses imprimé dans le quadrant supérieur gauche de l'écran.

set_pen_color#

set_pen_color définit la couleur du texte, des pixels, des lignes et des contours des formes.

Usage:

brain.screen.set_pen_color(color)

Paramètres

Description

color

Couleur du stylo et de la police à utiliser. Les options incluent :

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
Vous pouvez également spécifier une couleur personnalisée.

# Draw a rectangle with orange borders
brain.screen.set_pen_color(Color.ORANGE)
brain.screen.draw_rectangle(50, 50, 130, 60)

Capture d'écran de V5 Brain montrant un rectangle dessiné en orange dans le quadrant supérieur gauche de l'écran.

set_fill_color#

set_fill_color définit la couleur de remplissage utilisée lors du dessin des formes.

Usage:

brain.screen.set_fill_color(color)

Paramètres

Description

color

La couleur de remplissage à utiliser. Les options incluent :

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
Vous pouvez également spécifier une couleur personnalisée.

# Draw a purple rectangle
brain.screen.set_fill_color(Color.PURPLE)
brain.screen.draw_rectangle(50, 130, 100, 60)

Capture d'écran de V5 Brain montrant un rectangle rempli de violet dans le quadrant inférieur gauche de l'écran.

set_origin#

La commande set_origin définit l’origine utilisée pour le dessin et l’impression basée sur les coordonnées sur l’écran Brain. Par défaut, l’origine est le coin supérieur gauche de l’écran.

Usage:

brain.screen.set_origin(x, y)

Paramètres

Description

x

La coordonnée x à définir comme origine, de 0 à 479.

y

La coordonnée y à définir comme origine, de 0 à 239.

Dessiner#

draw_pixel#

draw_pixel dessine un pixel aux coordonnées x et y sélectionnées en utilisant la couleur de stylo actuelle.

Usage:

brain.screen.draw_pixel(x, y)

Paramètres

Description

x

La coordonnée x pour dessiner le pixel, de 0 à 479, référencée à l’origine de l’écran.

y

La coordonnée y pour dessiner le pixel, de 0 à 239, référencée à l’origine de l’écran.

# Draw the pixels marking the corners of a square
brain.screen.draw_pixel(250, 100)
brain.screen.draw_pixel(275, 100)
brain.screen.draw_pixel(250, 125)
brain.screen.draw_pixel(275, 125)

Capture d'écran de V5 Brain montrant un ensemble de pixels représentant les coins d'un carré près du centre de l'écran.

draw_line#

draw_line trace une ligne de la première coordonnée d’écran à la deuxième coordonnée d’écran en utilisant la largeur et la couleur du stylo actuelles.

Usage:

brain.screen.draw_line(start_x, start_y, end_x, end_y)

Paramètres

Description

start_x

La coordonnée x en pixels du début de la ligne, de 0 à 479, référencée à l’origine de l’écran.

start_y

La coordonnée y en pixels du début de la ligne, de 0 à 239, par rapport à l’origine de l’écran.

end_x

La coordonnée x en pixels de l’extrémité de la ligne, de 0 à 479, référencée à l’origine de l’écran.

end_y

La coordonnée y en pixels de l’extrémité de la ligne, de 0 à 239, par rapport à l’origine de l’écran.

# Draw a line from the top left to bottom right of the screen
brain.screen.draw_line(0, 0, 479, 239)

Une capture d'écran de l'écran V5 Brain montre une fine ligne diagonale au centre, allant du coin supérieur gauche au coin inférieur droit.

draw_rectangle#

draw_rectangle dessine un rectangle en utilisant la largeur du stylo, la couleur du stylo et la couleur de remplissage actuelles, sauf si le paramètre optionnel color est utilisé.

Usage:

brain.screen.draw_rectangle(x, y, width, height, color)

Paramètres

Description

x

La coordonnée x en pixels du coin supérieur gauche du rectangle de 0 à 479.

y

La coordonnée y en pixels du coin supérieur gauche du rectangle, de 0 à 239.

width

La largeur du rectangle.

height

La hauteur du rectangle.

color

Facultatif. Une option de couleur valide :

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
Vous pouvez également spécifier une couleur personnalisée.

# Draw a rectangle on the screen
brain.screen.draw_rectangle(50, 50, 130, 60)

Une capture d'écran de l'écran du V5 Brain montre un rectangle avec une fine bordure blanche imprimé dans le quadrant supérieur gauche.

draw_circle#

draw_circle dessine un cercle en utilisant la largeur du stylo, la couleur du stylo et la couleur de remplissage actuelles, sauf si le paramètre optionnel color est utilisé.

Usage:

brain.screen.draw_circle(x, y, radius, color)

Paramètres

Description

x

La coordonnée x en pixels du centre du cercle, de 0 à 479, référencée à l’origine de l’écran.

y

La coordonnée y en pixels du centre du cercle, de 0 à 239, par rapport à l’origine de l’écran.

radius

Le rayon du cercle, en pixels.

color

Facultatif. Couleur de remplissage à utiliser. Options :

  • Color.RED
  • Color.GREEN
  • Color.BLUE
  • Color.YELLOW
  • Color.ORANGE
  • Color.PURPLE
  • Color.CYAN
  • Color.TRANSPARENT
  • Color.WHITE
Vous pouvez également spécifier une couleur personnalisée.

# Draw a circle on the screen
brain.screen.draw_circle(120, 120, 40)

Une capture d'écran de l'écran V5 Brain montre un cercle avec une fine bordure blanche dessinée au centre.

render#

render active le double tampon pour l’écran du Cerveau. Une fois appelée, les commandes de dessin (texte, formes ou images) ne s’afficheront plus immédiatement pour le reste du projet. Les mises à jour ne seront visibles que lorsque render sera de nouveau utilisée. Cela permet des mises à jour d’écran plus fluides et mieux contrôlées, mais rien ne sera visible tant que render n’aura pas été utilisée.

Usage:

brain.screen.render()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Render text after moving
brain.screen.render()
brain.screen.print("Render later...")
drivetrain.drive_for(FORWARD, 100, MM)
drivetrain.turn_for(RIGHT, 90, DEGREES)
brain.screen.render()

set_clip_region#

La commande set_clip_region définit une zone rectangulaire à l’écran où tous les dessins et textes seront confinés. Tout contenu situé en dehors de cette zone ne sera pas affiché.

Usage:

brain.screen.set_clip_region(x, y, width, height)

Paramètres

Description

x

La position x du coin supérieur gauche du rectangle, par rapport à l’origine de l’écran.

y

La position y du coin supérieur gauche du rectangle, par rapport à l’origine de l’écran.

width

La largeur du rectangle.

height

La hauteur du rectangle.

# Restrict text and drawings to a specific region
brain.screen.set_clip_region(0, 0, 120, 120)
brain.screen.draw_rectangle(60, 60, 100, 100, Color.RED)
brain.screen.print_at("Cut off!", x=60, y=60)

Capture d'écran de V5 Brain avec le texte blanc « Coupé » et un carré rouge plein juste en dessous, dans le quadrant supérieur gauche de l'écran, montrant ce qui s'imprime dans la zone de découpage.

Touche#

pressing#

pressing renvoie une valeur booléenne indiquant si l’écran Brain est actuellement enfoncé.

  • True - L’écran est enfoncé.

  • False - L’écran n’est pas pressé.

Usage:

brain.screen.pressing()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Change the screen's color after it's pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.set_fill_color(Color.GREEN)
brain.screen.draw_rectangle(0, 0, 479, 239)

# Display different messages after the screen is pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.print("First message!")
brain.screen.next_row()
# Lift finger to press the screen again
while brain.screen.pressing():
    wait(5, MSEC)
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.print("Second message!")
brain.screen.next_row()

x_position#

x_position renvoie la coordonnée x du dernier appui sur l’écran sous forme d’un entier de 0 (gauche) à 479 (droite).

Usage:

brain.screen.x_position()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Display a circle where the screen is pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.set_fill_color(Color.WHITE)
brain.screen.draw_circle(brain.screen.x_position(), brain.screen.y_position(), 20)

y_position#

y_position renvoie la coordonnée y du dernier appui sur l’écran sous forme d’un entier de 0 (haut) à 239 (bas).

Usage:

brain.screen.y_position()

Paramètres

Description

Cette méthode ne comporte aucun paramètre.

# Display a circle where the screen is pressed
while not brain.screen.pressing():
    wait(5, MSEC)
brain.screen.set_fill_color(Color.WHITE)
brain.screen.draw_circle(brain.screen.x_position(), brain.screen.y_position(), 20)

Rappels#

pressed#

Appuyer sur pressed enregistre une fonction qui sera appelée lorsque l’écran du cerveau sera pressé.

Usage:

brain.screen.pressed(callback, arg)

Paramètres

Description

callback

Une fonction précédemment définie qui s’exécute lorsque l’écran Brain est pressé.

arg

Facultatif. Un tuple contenant les arguments à transmettre à la fonction de rappel. Voir Utilisation des fonctions avec paramètres pour plus d’informations.

def my_function():
  brain.screen.print("Screen pressed")

# Call my_function whenever the Brain screen is pressed
brain.screen.pressed(my_function)

released#

released enregistre une fonction à appeler lorsque l’écran est relâché (toucher supprimé).

Usage:

brain.screen.released(callback, arg)

Paramètres

Description

callback

Une fonction définie précédemment qui s’exécute lorsque l’écran Brain est relâché.

arg

Facultatif. Un tuple contenant les arguments à transmettre à la fonction de rappel. Voir Utilisation des fonctions avec paramètres pour plus d’informations.

def my_function():
  brain.screen.print("Screen released")

# Call my_function whenever the Brain screen is released
brain.screen.released(my_function)