Écran#
Introduction#
Les méthodes d’affichage contrôlent la manière dont la télécommande du drone VEX AIR affiche le texte, les chiffres, les graphiques et les images sur son écran, ainsi que la manière dont elle réagit aux pressions sur l’écran.
Vous trouverez ci-dessous une liste des méthodes disponibles :
Impression par curseur – Afficher du texte et gérer le curseur d’impression.
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.get_row– Renvoie la ligne où le texte sera imprimé.get_column– Renvoie la colonne dans laquelle le texte sera imprimé.
Impression XY – Imprimer le texte aux coordonnées en pixels.
print_at– Affiche du texte, des nombres ou des valeurs de variables à une coordonnée x et y spécifique.set_origin– Définit l’origine utilisée pour l’impression et le dessin basés sur les coordonnées.
Modificateurs – Modifient les paramètres d’écran, les couleurs et le comportement de dessin.
clear_screen– Efface tous les dessins, textes et images de l’écran du contrôleur.wait_for_render– Bascule le dessin à l’écran en mode rendu ultérieur.set_font– Définit la police du texte imprimé.set_pen_width– Définit l’épaisseur des lignes dessinées et des contours de formes.set_pen_color– Définit la couleur du texte, des pixels, des lignes et des contours des formes.set_text_fill_color– Définit la couleur de remplissage derrière le texte imprimé.set_fill_color– Définit la couleur de remplissage des formes dessinées.
Dessiner – Ajouter des graphismes et des images à l’écran.
draw_pixel– Dessine un pixel à une position x et y spécifique.draw_line– Trace une ligne entre deux points.draw_rectangle– Dessine un rectangle en utilisant les couleurs de stylo et de remplissage actuelles.draw_circle– Dessine un cercle en utilisant les couleurs de stylo et de remplissage actuelles.show_file– Dessine une image téléchargée.
Tactile – Détecte et répond aux pressions sur l’écran.
pressing– Renvoie si l’écran est actuellement 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 – Exécuter des fonctions lorsque l’écran est enfoncé ou relâché.
Impression du curseur#
print#
print imprime du texte, des nombres ou des valeurs de variables sur l’écran du contrôleur à la position du curseur et à la police actuelles.
Usage:
controller.screen.print(text)
Paramètres |
Description |
|---|---|
|
Le texte, le nombre ou la valeur de la variable à afficher à l’écran. |
|
Facultatif. Séparateur entre les caractères imprimés. Par défaut, |
|
Facultatif. La chaîne ajoutée après le dernier texte imprimé. Par défaut, |
|
Facultatif. Nombre de décimales avec lesquelles un nombre flottant sera affiché sous forme d’entier. Par défaut, précision |
# Display a message at the starting cursor position.
controller.screen.print("Time to fly!")

# Display the first 2 decimals of pi
controller.screen.print(3.1415, precision = 2)

set_cursor#
set_cursor moves the cursor to a specific row and column on the controller screen. The next print call will start printing at that location. The row and column spacing will take into account the selected font. With the default monospaced medium font, the screen can clearly display up to 18 rows and 53 columns. Text placed beyond this range may be cut off or harder to read.
Usage:
controller.screen.set_cursor(row, col)
Paramètres |
Description |
|---|---|
|
La ligne sur laquelle déplacer le curseur. |
|
La colonne vers laquelle déplacer le curseur. |
# Display text starting at Row 7 Column 25.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print("Row 7, Column 25")

next_row#
La commande next_row déplace le curseur à la colonne 1 de la ligne suivante sur l’écran de la manette.
Usage:
controller.screen.next_row()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Display two lines of text.
controller.screen.print("Line 1")
controller.screen.next_row()
controller.screen.print("Line 2")

clear_row#
clear_row efface une ligne de texte sur l’écran de la manette.
Usage:
controller.screen.clear_row(row, color)
Paramètre |
Description |
|---|---|
|
Facultatif. La ligne à effacer. Par défaut, il s’agit de la ligne actuellement sélectionnée par le curseur. |
|
Optional. The color to apply to the cleared row. If a color is not specified, the
|
# Clear only the second row of text
controller.screen.print("This text stays")
controller.screen.next_row()
controller.screen.print("This text disappears")
wait(3, SECONDS)
controller.screen.clear_row(2)
# Turn the 5th row green.
controller.screen.clear_row(5, GREEN)
get_row#
get_row renvoie la ligne actuelle dans laquelle le texte sera imprimé, sous forme d’entier.
Usage:
controller.screen.get_row()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Display the cursor's current row.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print(controller.screen.get_row())

get_column#
get_column renvoie la colonne actuelle dans laquelle le texte sera imprimé, sous forme d’entier.
Usage:
controller.screen.get_column()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Display the cursor's current column.
controller.screen.set_cursor(row=7, col=25)
controller.screen.print(controller.screen.get_column())

Impression XY#
print_at#
print_at prints text, numbers, or variable values on the controller screen at a specific (x, y) position in pixels, using the current font and origin. x sets how far from the left side the text begins, and y sets where the bottom of the letters sit. This method disregards the current cursor position.
Usage:
controller.screen.print_at(text, x, y)
Paramètre |
Description |
|---|---|
|
Le texte, le nombre ou la valeur de la variable à afficher à l’écran. |
|
La position horizontale du texte, sous forme d’un entier compris entre 0 et 640 pixels. 0 correspond à la gauche ; 640 à la droite. |
|
La position verticale du texte, sous forme d’un entier compris entre 0 et 480 pixels. 0 correspond au haut ; 480 au bas. |
# Display a message in the middle of the screen.
controller.screen.print_at("Hello, drone!", x=320, y=240)

set_origin#
La commande set_origin définit l’origine (0, 0) utilisée pour l’affichage et l’impression des coordonnées sur l’écran du contrôleur. Par défaut, l’origine se situe dans le coin supérieur gauche de l’écran. Cette méthode permet de repositionner l’origine sur un autre point de coordonnées (x, y).
Usage:
controller.screen.set_origin(x, y)
Paramètre |
Description |
|---|---|
|
La nouvelle coordonnée x à définir comme origine, donnée sous forme d’entier compris entre 0 et 640. |
|
La nouvelle coordonnée y à définir comme origine, donnée sous forme d’entier compris entre 0 et 480. |
# Set the origin to the center of the screen.
controller.screen.set_origin(x=320, y=240)
# Draw a rectangle at the new origin.
controller.screen.draw_rectangle(x=0, y=0, width=80, height=40)

Mutateurs#
clear_screen#
clear_screen efface tous les dessins, textes et images de l’écran de la manette.
Usage:
controller.screen.clear_screen(row, col, color)
Paramètre |
Description |
|---|---|
|
Facultatif. Ligne sur laquelle déplacer le curseur après avoir effacé l’écran. La valeur par défaut est 1. |
|
Facultatif. Colonne vers laquelle déplacer le curseur après avoir effacé l’écran. La valeur par défaut est 1. |
|
Facultatif. Définit la couleur de l’écran. Si les lignes
|
# Draw a circle, and clear it after 2 seconds.
controller.screen.draw_circle(x=320, y=240, radius=80)
wait(2, SECONDS)
controller.screen.clear_screen()
# Print two messages in the same spot
controller.screen.print("Hello!")
wait(3,SECONDS)
controller.screen.clear_screen(row=1, col=1)
controller.screen.print("Goodbye!")
# Set the background color of the screen to red.
controller.screen.clear_screen(color=RED)
wait_for_render#
La méthode wait_for_render wait_for_render active le rendu différé. Une fois cette méthode exécutée, les commandes suivantes n’apparaîtront pas sur l’écran du contrôleur tant que la méthode wait_for_render wait_for_render ne sera pas exécutée.
Remarque : Utilisez cette fonction avant de dessiner un groupe de texte, de formes ou d’images, puis utilisez-la à nouveau pour afficher la mise à jour complète en une seule fois.
Usage:
controller.screen.wait_for_render()
Paramètre |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Display text and images when button 7 is pressed.
controller.screen.wait_for_render()
controller.screen.print("Screen rendered!")
controller.screen.draw_circle(x=320, y=240, radius=80)
while not controller.button7.pressing():
wait(5, MSEC)
controller.screen.wait_for_render()

set_font#
set_font définit la police utilisée pour l’affichage du texte sur l’écran du contrôleur. Cette police s’appliquera à tout le texte imprimé après l’exécution de cette méthode. La police par défaut au début d’un projet est MONO20.
Usage:
controller.screen.set_font(fontname)
Paramètre |
Description |
|---|---|
|
Définit la police sur l’une des suivantes :
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
# Display text using a larger font.
controller.screen.set_font(MONO40)
controller.screen.print("VEX")

set_pen_width#
set_pen_width définit l’épaisseur des lignes dessinées et des contours des formes.
Usage:
controller.screen.set_pen_width(width)
Paramètre |
Description |
|---|---|
|
La largeur du stylo, exprimée sous forme d’un entier en pixels. |
# Draw a rectangle with a pen width of 10.
controller.screen.set_pen_width(10)
controller.screen.draw_rectangle(x=200, y=200, width=200, height=80)

set_pen_color#
set_pen_color définit la couleur du texte, des pixels, des lignes et des contours des formes.
Usage:
controller.screen.set_pen_color(color)
Paramètre |
Description |
|---|---|
|
Facultatif. Définit la couleur du stylo et de la police. Les options incluent :
|
# Draw a rectangle with an orange outline.
controller.screen.set_pen_color(ORANGE)
controller.screen.draw_rectangle(x=200, y=150, width=240, height=150)
controller.screen.set_pen_color(WHITE)
controller.screen.print_at("VEXcode AIR", x=250, y=220)

set_text_fill_color#
set_text_fill_color définit la couleur de remplissage du texte imprimé. La couleur de remplissage par défaut est transparente.
Usage:
controller.screen.set_text_fill_color(color)
Paramètre |
Description |
|---|---|
|
Facultatif. Définit la couleur de remplissage du texte. Les options incluent :
|
# Display two colors behind text
controller.screen.set_text_fill_color(RED)
controller.screen.print("Red")
controller.screen.next_row()
controller.screen.set_text_fill_color(BLUE)
controller.screen.print("Blue")

set_fill_color#
set_fill_color définit la couleur de remplissage utilisée lors du dessin des formes. La couleur de remplissage par défaut est le noir.
Usage:
controller.screen.set_fill_color(color)
Paramètre |
Description |
|---|---|
|
Facultatif. Définit la couleur de remplissage. Les options incluent :
|
# Draw an orange-filled rectangle with text on top
controller.screen.set_fill_color(ORANGE)
controller.screen.draw_rectangle(x=200, y=150, width=250, height=150)
controller.screen.print_at("VEXcode AIR", x=250, y=220)

Dessiner#
draw_pixel#
draw_pixel draws one pixel at the selected x and y coordinate using the current pen color.
Usage:
controller.screen.draw_pixel(x, y)
Paramètre |
Description |
|---|---|
|
La coordonnée x où le pixel sera dessiné, donnée sous forme d’entier compris entre 0 et 640. |
|
La coordonnée y où le pixel sera dessiné, donnée sous forme d’entier compris entre 0 et 480. |
# Draw five pixels in a diagonal.
controller.screen.draw_pixel(x=360, y=200)
controller.screen.draw_pixel(x=340, y=220)
controller.screen.draw_pixel(x=320, y=240)
controller.screen.draw_pixel(x=300, y=260)
controller.screen.draw_pixel(x=280, y=280)
![]()
draw_line#
draw_line dessine une ligne de la première coordonnée d’écran (x1, y1) à la deuxième coordonnée d’écran (x2, y2) en utilisant la largeur du stylo et la couleur du stylo actuelles.
Les coordonnées x et y utilisent l’origine par défaut de (0, 0) à moins qu’une origine différente n’ait été définie à l’aide de set_origin.
Usage:
controller.screen.draw_line(x1, y1, x2, y2)
Paramètre |
Description |
|---|---|
|
La coordonnée x de départ de la ligne, donnée sous forme d’entier compris entre 0 et 640. |
|
La coordonnée y de départ de la ligne, donnée sous forme d’entier compris entre 0 et 480. |
|
La coordonnée x finale de la ligne, donnée sous forme d’entier compris entre 0 et 640. |
|
La coordonnée y finale de la ligne, donnée sous forme d’un entier compris entre 0 et 480. |
# Make an X across the screen.
controller.screen.draw_line(x1=0, y1=0, x2=640, y2=480)
controller.screen.set_pen_color(CYAN)
controller.screen.draw_line(x1=0, y1=480, x2=640, y2=0)

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é.
Les coordonnées x et y utilisent l’origine par défaut de (0, 0) à moins qu’une origine différente n’ait été définie à l’aide de set_origin.
Usage:
controller.screen.draw_rectangle(x, y, width, height, color)
Paramètre |
Description |
|---|---|
|
La coordonnée x du coin supérieur gauche du rectangle, donnée sous forme d’entier compris entre 0 et 640. |
|
La coordonnée y du coin supérieur gauche du rectangle, donnée sous forme d’entier compris entre 0 et 480. |
|
La largeur du rectangle, donnée sous forme d’un entier compris entre 0 et 640. |
|
La hauteur du rectangle, donnée sous forme d’un entier compris entre 0 et 480. |
|
Facultatif. Définit la couleur de remplissage du rectangle. Les options incluent :
|
# Draw two rectangles on the screen.
controller.screen.draw_rectangle(x=0, y=0, width=620, height=460)
controller.screen.draw_rectangle(x=200, y=180, width=200, height=100, color=GREEN)

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é.
Les coordonnées x et y utilisent l’origine par défaut de (0, 0) à moins qu’une origine différente n’ait été définie à l’aide de set_origin.
Usage:
controller.screen.draw_circle(x, y, radius, color)
Paramètre |
Description |
|---|---|
|
L’abscisse du centre du cercle, donnée sous forme d’un entier compris entre 0 et 640. |
|
La coordonnée y du centre du cercle, donnée sous forme d’un entier compris entre 0 et 480. |
|
Le rayon du cercle, exprimé sous forme d’un entier compris entre 0 et 480 pixels. |
|
Facultatif. Définit la couleur de remplissage du cercle. Les options incluent :
|
# Draw one green circle on the screen.
controller.screen.set_fill_color(GREEN)
controller.screen.draw_circle(x=320, y=240, radius=200, color=GREEN)

show_file#
show_file dessine une image téléchargée personnalisée sur l’écran du contrôleur à une position x et y, avec mise à l’échelle, rotation et transparence alpha optionnelles.
Usage:
controller.screen.show_file(file, x, y, scale_width, scale_height, rotation, use_alpha)
Paramètre |
Description |
|---|---|
|
Image téléchargée par l’utilisateur. Les options changeront si les noms des images sont modifiés dans le panneau de configuration. |
|
Décalage horizontal de l’image, exprimé en pixels sous forme d’entier. Les valeurs positives déplacent l’image vers la droite ; les valeurs négatives la déplacent vers la gauche. |
|
Le décalage vertical de l’image, exprimé sous forme d’un entier en pixels. Les valeurs positives la déplacent vers le bas ; les valeurs négatives la déplacent vers le haut. |
|
Facultatif. Largeur de l’image à redimensionner, exprimée sous forme d’un entier en pixels. |
|
Facultatif. Hauteur de l’image à redimensionner, exprimée sous forme d’un entier en pixels. |
|
Facultatif. Le nombre de degrés de rotation de l’image, indiqué sous forme d’un entier compris entre 0 et 359. |
|
Facultatif. Indique si le canal alpha de l’image doit être utilisé pour la transparence. Les options sont : |
# Display uploaded Image 1 in the top left corner.
controller.screen.show_file(IMAGE1, x=0, y=0)
# Display uploaded Image 1 scaled to the full screen.
controller.screen.show_file(IMAGE1, x=65, y=0, scale_width=640, scale_height=480)
# Display uploaded Image 1 with rotation of 180 degrees.
controller.screen.show_file(IMAGE1, x=-65, y=0, rotation=180)
# Upload an image with a transparent background.
# Display uploaded Image 1 with alpha channel enabled.
controller.screen.show_file(IMAGE1, x=0, y=0, use_alpha=True)
Touche#
pressing#
Appuyer sur pressing renvoie une valeur booléenne indiquant si l’écran du robot est actuellement enfoncé.
True– L’écran est enfoncé.False– L’écran n’est pas pressé.
Usage:
controller.screen.pressing()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Play a sound when the screen is pressed.
while True:
if controller.screen.pressing():
controller.sound.play_note("C5", 500)
wait(5, MSEC)
# Display different messages after the screen is pressed
while not controller.screen.pressing():
wait(5, MSEC)
controller.screen.print("First message!")
controller.screen.next_row()
# Lift finger to press the screen again
while controller.screen.pressing():
wait(5, MSEC)
while not controller.screen.pressing():
wait(5, MSEC)
controller.screen.print("Second message!")
controller.screen.next_row()
x_position#
x_position renvoie la coordonnée x en pixels où l’écran a été pressé en dernier, sous forme d’un entier de 0 (gauche) à 640 (droite).

Usage:
controller.screen.x_position()
Paramètres |
Description |
|---|---|
Cette méthode ne comporte aucun paramètre. |
# Play a high or low note based on where screen is pressed.
while True:
if controller.screen.pressing():
if controller.screen.x_position() > 320:
controller.sound.play_note("C6", 500)
else:
controller.sound.play_note("C4", 500)
wait(5, MSEC)
y_position#
y_position renvoie la coordonnée y en pixels où l’écran a été pressé pour la dernière fois, sous forme d’un entier de 0 (haut) à 480 (bas).

Usage:
controller.screen.y_position()
# Play a high or low note based on where screen is pressed.
while True:
if controller.screen.pressing():
if controller.screen.y_position() > 240:
controller.sound.play_note("C6", 500)
else:
controller.sound.play_note("C4", 500)
wait(5, MSEC)
Rappels#
pressed#
Appuyer sur pressed enregistre une fonction qui sera appelée lorsque l’écran de la manette sera enfoncé.
Usage:
controller.screen.pressed(callback, arg)
Paramètres |
Description |
|---|---|
|
Une fonction qui est préalablement définie pour s’exécuter lorsque l’écran de la manette est pressé. |
|
Facultatif. Un tuple contenant les arguments à transmettre à la fonction de rappel. Voir Utilisation des fonctions avec paramètres pour plus d’informations. |
# Play a sound when the screen is pressed.
def play_sound():
controller.sound.play_note("C5", 500)
controller.screen.pressed(play_sound)
released#
released enregistre une fonction à appeler lorsque l’écran du contrôleur est relâché.
Usage:
controller.screen.released(callback, arg)
Paramètres |
Description |
|---|---|
|
Une fonction qui est préalablement définie pour s’exécuter lorsque l’écran du contrôleur est relâché. |
|
Facultatif. Un tuple contenant les arguments à transmettre à la fonction de rappel. Voir Utilisation des fonctions avec paramètres pour plus d’informations. |
# Play a sound when the screen is pressed.
def play_sound():
controller.sound.play_note("C5", 500)
controller.screen.released(play_sound)













