Documentation des graphiques tortue

Module import: from gturtle import *

Bibliothèque de sprites

Function Action
makeTurtle() Crée une tortue (globale) dans une nouvelle fenêtre et définit toutes les commandes globales
makeTurtle(color) Idem, mais en spécifiant la couleur de la tortue à créer
makeTurtle("sprites/turtle.gif") Idem, mais en créant une tortue représentées par l’image de sprite spécifiée
t = Turtle() Créer un objet tortue t
tf = TurtleFrame() Crée une fenêtre de graphique (TurtleFrame) pouvant contenir plusieurs tortues
t = Turtle(tf) Crée une tortue t qui se trouve dans le TurtleFrame tf
clone() Crée un clone de la tortue globale possédant les mêmes propriétés (même couleur, position et orientation)
isDisposed() Retourne True si la fenêtre est fermée
putSleep() Met l’exécution du programme en pause jusqu’à l’appel de la fonction wakeUp()
wakeUp() Reprend l’exécution d’un programme mis en pause avec putSleep()
enableRepaint(False) Déclenche le rendu automatique de l'écran
repaint() Restitue l'écran manuellement (après déclenchement du rendu automatique)
savePlayground() Copie le playground dans une memoire d'image interne (restituter avec clear())
savePlayground(fileName, format) Copie le playground dans un fichier image (format: "png" ou "gif"). Retourne False dans le cas échéant
setPlaygroundSize(width, height) Sélectionne la grandeur de la fenêtre graphique indépendant des options dans TigerJython (doit être appelé avant makeTurtle())
setFramePosition(x, y) Positionne le coin en haut à gauche de la fenêtre graphique à la position x, y de l'écran
setFramePositionCenter() Positionne la fenêtre graphique au centre de l'écran

Movements
back(distance), bk(distance)

Déplace la tortue en arrière sur la distance indiquée (coordonnées tortue)

forward(distance), fd(distance)

Déplace la tortue en avant sur la distance indiquée (coordonnées tortue)

hideTurtle(), ht()

Cache la tortue, ce qui a pour effet d’accélérer le traçage du dessin

home()

Replace la tortue dans sa position d’origine au centre de la fenêtre et orientée vers le haut

left(angle), lt(angle)

Tourne la tortue de angle degrés vers la gauche

penDown(), pd()

Active le crayon (la tortue trace son chemin)

penErase(), pe()

Assigne au crayon la même couleur que le fond d’écran (trace invisible)

leftArc(radius, angle)

Déplace la tortue sur un arc de cercle orienté vers la gauche, d’angle angle (en degrés) et de rayon radius

leftCircle(radius) Déplace la tortue sur un cercle de rayon radius en partant vers la gauche.
penUp(), pu() Désactive le crayon (la trace de la tortue devient invisible)
penWidth(width) Règle la largeur de la trace (en pixels)
right(angle), rt(angle) Tourne la tortue de angle degrés vers la droite
rightArc(radius, angle) Déplace la tortue sur un arc de cercle orienté vers la droite, d’angle angle (en degrés) et de rayon radius
rightCircle(radius) Déplace la tortue sur un cercle de rayon radius en partant vers la droite.
setCustomCursor(cursorImage) Règle le fichier image utilisé en guise de curseur de la souris
setCustomCursor(cursorImage, Point(x, y))
Idem, en indiquant les coordonnées relatives de l’image par rapport au point d’action de la souris.
setLineWidth(width) Règle la largeur du crayon (en pixels)
showTurtle(), st() Affiche la tortue globale
speed(speed) Règle la vitesse du mouvement de la tortue (1 à 1000, par défaut 200) Avec la vitesse (-1), la tortue se déplace le plus rapidement (sans animation)
delay(time) Arrête l’exécution du programme durant l’intervalle de temps time (en millisecondes)
wrap() Les positions des tortues se trouvant en dehors de l’écran sont envoyées à l’intérieur de la fenêtre par une symétrie sur un tore. Une tortue qui dépasse à gauche réapparait donc à droite et une tortue qui dépasse vers le haut réapparait en bas de l’écran.
clip() Contraire de wrap() : les tortues qui sortent de la fenêtre sont invisibles
getPlaygroundWidth()

Retourne la largueur m du territoire de la tortue (coordonnées -m/2...m/2)

getPlaygroundHeight() Retourne la hauteur m du territoire de la tortue (coordonnées -m/2...m/2)

Localisation
direction(x, y) Retourne l'angle pour tourner dans la direction de la position (x, y)
direction(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
direction(turtle) Retourne l'angle pour turner dans la direction d'une autre tortue
distance(x, y) Retourne la distance séparant la position de la tortue et le point de coordonnées (x, y)
distance(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
distance(turtle) Retourne la distance séparant la position de la tortue de la position d'une autre tortue
getPos() Retourne la position courante de la tortue sous forme de liste
getX() Retourne la coordonnée x de la tortue
getY() Retourne la coordonnée y de la tortue
heading() Retourne l’orientation actuelle de la tortue en degrés. L’orientation vers le nord correspond à un angle de 0°. Les angles sont orientés dans le sens des aiguilles de la montre.
heading(degrees) Règle l’orientation de la tortue en degrés. L’orientation vers le nord correspond à un angle de 0°. Les angles sont orientés dans le sens des aiguilles de la montre.
moveTo(x, y) Déplace la tortue à la position (x,y) en dessinant la trace
moveTo(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
setHeading(degrees), setH(degrees) Règle l’orientation de la tortue (en degrés, 0° correspond au Nord, angles orientés dans le sens des aiguilles de la montre)
setRandomHeading() Règle l’orientation de manière aléatoire avec un angle de vue compris entre 0° et 360°
setPos(x, y) Positionne la tortue au point de coordonnées (x,y) sans dessiner la trace
setPos(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
setX(x) Règle la coordonnée x de la tortue
setY(y) Règle la coordonnée y de la tortue
setRandomPos(width, height) Place la tortue sur une position aléatoire située à l’intérieur du rectangle centré à la position actuelle, de largeur width et de hauteur height
setScreenPos(x, y) Positionne la tortue globale aux coordonnées d’écran x et y
setScreenPos(Point(x, y)) Idem en spécifiant les coordonnées par un objet Point(x,y)
towards(x, y) Retourne l’angle d’orientation (en degrés) qu’il faut donner à la tortue pour qu’elle vise le point de coordonnées (x, y).
towards(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
towards(turtle) Retourne l’angle d’orientation (en degrés) qu’il faut donner à la tortue pour qu’elle vise la tortue turtle
toTurtlePos(x, y) Retourne une liste des coordonneés de la tortue globale au point x, y de l'écran
toTurtlePos(Point(x, y)) Idem en spécifiant les coordonnées par un objet Point(x,y)
pushState() Sauvegarde l’état actuel de la tortue sur une pile (Last In, First Out)
popState() Restaure le dernier état sauvegardé avec pushState(). Supprime ce dernier de la pile des états
clearStates() Vide la pile de sauvegarde des états en supprimant tous les états sauvegardés

Couleurs
askColor(title, defaultColor) Ouvre une boîte de dialogue de sélection de couleur et retourne la couleur sélectionnée. Si l’utilisateur clique sur le bouton annuler, retourne None.
clear() Efface toutes les traces et cache toutes les tortues en les laissant par contre à leur place. Si la memoire d'image crée par savePlayground() n'est pas vide, son contenu est affiché
clear(color) Efface les traces et cache toutes les tortues puis colorie le fond d’écran avec la couleur color
clean() Efface toutes les traces et toutes les tortues. Réinitialise la position de toutes les tortues au centre de l’écran. La memoire d'image crée par savePlayground() est vidée
clean(color) Efface toutes les traces et toutes les tortues en coloriant le fond de la fenêtre avec la couleur color. Réinitialise la position de toutes les tortues au centre de l’écran.
clearScreen(), cs() Efface toutes les traces et replace la tortue dans sa position d’origine
dot(diameter) Dessiner un disque plein de diamètre diameter en le remplissant de la couleur assignée au crayon de la tortue.
openDot(diameter) Dessiner un cercle vide de diamètre diameter en coloriant son périmètre de la couleur assignée au crayon de la tortue.
spray(density, spread, size) Dessiner un nuage de points aléatoires à la position de la tortue. Paramètres: nombre de points, extension du nuage et largeur des points (sans size: size = 1)
fill() Remplit la surface fermée qui entoure le point auquel se trouve la tortue avec la couleur de remplissage spécifiée au préalable avec setFillColor(color).
fill(x , y) Remplit la surface fermée qui entoure le point de coordonnées (x,y) avec la couleur de remplissage spécifiée au préalable avec setFillColor(color)
fill(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
fillToPoint() Remplissage continu depuis la position actuelle de la tortue
fillToPoint(x , y) Remplissage continu depuis le point de coordonnées (x, y)
fillToPoint(coords) Idem, en spécifiant les coordonnées coords sous forme de tuple (x,y), de liste [x,y], ou de nombre complexe x + yj
fillToHorizontal( y) Remplissage continu de la surface délimitée par la trace actuelle de la tortue et la droite horizontale formée par les points d’ordonnée y
fillToVertical(x) Remplissage continu de la surface délimitée par la trace actuelle de la tortue et la droite verticale formée par les points d’abscisse x
fillOff() Termine le mode remplissage
getColor() Retourne la couleur de la tortue globale
getColorStr() Retourne la couleur de la tortue globale sous la forme d’une chaine de caractères X11
getFillColor() Retourne la couleur de remplissage actuelle
getFillColorStr() Retourne la couleur de remplissage actuelle sous la forme d’une chaine de caractères X11
getPixelColor() Retourne la couleur du pixel (trace ou fond) situé à la position actuelle de la tortue globale (None, si hors de la fenêtre graphique)
getPixelColorStr() Idem, en retournant la couleur sous forme de chaine X11
(chaîne vide, si le nom n'existe pas; None, si hors de la fenêtre graphique)
getRandomX11Color() Retourne une couleur aléatoire sous forme de chaine de caractères X11
makeColor() Retourne une couleur de référence correspondant à la valeur passée. Exemples de valeurs : ("7FFED4"), ("Aqua-Marine"), (0x7FFED4), (8388564), (0.5, 1.0, 0.83), (128, 255, 212), ("rainbow", n) avec n = 0..1 qui indique une couleur de l’arc-en-ciel : n=0.1 correspond au violet et n=0.9 au rouge
makeColor(color, alpha) crée une couleur transparente pour alpha entre 0 et 1 (makeColor("red", 0.25) )
setColor(color) Règle la couleur de la tortue à color.
setPenColor(color) Règle la couleur du crayon utilisé par la tortue à color
setFillColor(color) Règle la couleur de remplissage utilisée par la tortue à color
startPath() Commence à tenir compte du mouvement de la tortue pour les opérations de remplissage subséquentes.
fillPath() Contraire de startPath() : termine l’opération de remplissage à la position courante de la tortue et remplit la zone ainsi délimitée par la couleur de remplissage.
stampTurtle() Crée une image de la tortue à la position courante.
stampTurtle(color) Crée une image de la tortue à la position courante avec la couleur color

Fonctions de rappel (callbacks)
makeTurtle(mouseNNN = onMouseNNN)
use a comma separator to register more than one
Enregistre la fonction de rappel (callback) onMouseNNN(x,y) qui est appelée lorsqu’un événement de la souris survient. Les valeurs possibles pour NNN sont : Pressed, Released, Clicked, Dragged, Moved, Entered, Exited, SingleClicked, DoubleClicked, Hit : L’invocation se fait dans un thread (fil d’exécution) séparé, HitX: idem, mais les événements sont ignorés jusqu’à ce que le traitement de l’événement en cours soit terminé
isLeftMouseButton(),
isRightMouseButton()
Retourne vrai si l’événement est généré par le bouton gauche, respectivement droit
makeTurtle(keyNNN = onKeyNNN)
Enregistre la fonction de rappel (callback) onKeyNNN(keyCode) qui est appelée lorsqu’une touche du clavier est enfoncée. Les valeurs possibles pour NNN sont : Pressed, Hit : invocation du gestionnaire d’événement dans un thread séparé et HitX : idem que Hit, mais les événements sont ignorés jusqu’à ce que la dernière exécution de la fonction de rappel ait retourné. keyCode est un entier unique qui identifie la touche pressée
getKeyModifiers() Retourne un nombre entier représentant les touches spéciales du clavier enfoncées (Shift, Ctrl, etc…) et leurs combinaisons
makeTurtle(closeClicked = onCloseClicked) Enregistre la fonction de rappel onCloseClicked() qui est appelée lorsque le bouton fermer de la barre de titre est actionné. La fenêtre doit ensuite être fermée manuellement en appelant dispose()
makeTurtle(turtleHit = onTurtleHit) Enregistre la fonction de rappel onTurtleHit(x, y) qui est appelée lorsqu’on clique sur l’image de la tortue globale
t = Turtle(turtleHit = onTurtleHit) Enregistre la fonction de rappel onTurtleHit(t, x, y) qui est appelée lorsqu’on clique sur l’image de l’objet tortue t

Texte, images et son
addStatusBar(20)   Ajout une barre d’état de 20 pixels de hauteur
beep()   Émet un court son
playTone(freq) Joue un son de fréquence freq (en Hz) et de durée 1000 ms. Fonction bloquante
playTone(freq, block=False) Idem, mais en version non bloquante, ce qui permet de jouer plusieurs sons à la fois
playTone(freq, duration) Joue le son de fréquence freq` et de durée duration (en ms)
playTone([f1, f2, ...]) Joue plusieurs sons consécutifs de fréquences f1, f2, … et de durée 1000 ms
playTone([(f1, d1), (f2, d2), ...]) Joue plusieurs tons consécutifs indiqués par des tuples (fréquence, durée)
playTone([("c",700), ("e",1500), ...])
Joue plusieurs tons consécutifs en utilisant le nom de la note (A=la, H=si, C=do, D=ré, …, et de durée indiquée en [ms]. La tessiture du générateur de son s’étend du do1, do#1, … jusqu’au si5
playTone([("c",700), ("e",1500), ...], instrument = "piano")
Idem, mais en choisissant le type d’instrument à utiliser pour la restitution du son. Les instruments disponibles sont piano, guitar, harp, trumpet, xylophone, organ, violin, panflute, bird, seashore ... (voir la spécification MIDI)
playTone([("c",700), ("e",1500), ...], instrument = "piano", volume=10)
Idem, en rajoutant le choix du volume compris entre 0..100
label(param) Affiche le texte text à la position courante de la tortue (aligné à gauche)
label(param1, param2, ...) Relie str(params) séparés par des espaces et affiche le texte
label(param1, param2, ..., adjust = 'x' Idem, mais x = 'l' aligné à gauche (defaut), 'c' centré, 'r' à droite
printerPlot(draw) Envoie vers l’imprimante les commandes de dessins contenues dans la fonction draw() dont la référence est passée en argument
setFont(Font font) Définit la police utilisée par la fonction label(). font est un object de la classe Font. Example: Font("Courier New", Font.BOLD, 12). Default: Font("SansSerif", Font.PLAIN, 24)
setFont(name) Définit le nom de la police en utilisant le style et la taille existants
setFont(name, style) Définit le nom et le style de la police en utilisant la taille existante
style = Font.PLAIN, Font.BOLD, Font.ITALIC
setFont(name, style, size) Définit le nom, le style et la taille de la police
setFontSize(size) Définit la taille de police en utilisant le nom et le style existants
getTextHeight() Retourne la hauteur des caractères de la police actuellement en usage (en pixels)
getTextAscent() Retourne la hauteur du jambage supérieur de la police actuellement en usage (en pixels). Pour plus de détails, consulter
getTextDescent() Retourne la hauteur du jambage inférieur de la police actuellement en usage (en pixels). Cf. getTextAscent().
getTextWidth(text) Retourne la largeur en pixels du texte text avec la police actuellement en usage.
setStatusText(text) Affiche le texte text dans la barre d’état. Tout texte présent dans la barre d’état au moment de l’appel est écrasé.
setTitle(title) Affiche la chaine de caractères title dans la barre de titre de la fenêtre
img = getImage(path)

Charge et retourne l'image par un fichier JAR, par un fichier du disque local ou par un serveur internet

drawImage(img)

Dessine l'image dans le fond d’écran avec le centre à la position actuelle de la tortue et orienté par l'angle actuelle de la tortue

drawImage(path)

Charge l'image par un fichier JAR, par un fichier du disque local ou par un serveur internet et dessine l'image dans le fond d’écran avec le centre à la position actuelle de la tortue et orienté par l'angle actuelle de la tortue



Boîtes de dialogue    Documentation Entry Dialoque
msgDlg(message) Ouvre une boîte de dialogue modale avec le message message et un bouton OK
msgDlg(message, title = text)
Idem, en spécifiant le titre de la fenêtre
inputInt(prompt) Ouvre une boîte de dialogue modale avec les boutons OK/Annuler. OK retourne le nombre entier entré. Un clic sur Annuler ou Fermer termine le programme.
inputInt(prompt, False) Idem, sauf qu’un clic sur Annuler/Fermer n’interrompt pas le programme mais retourne la valeur None
inputFloat(prompt) Ouvre une boîte de dialogue modale avec les boutons OK/Annuler. OK retourne le nombre à virgule flottante entré. Un clic sur Annuler ou Fermer termine le programme.
inputFloat(prompt, False) Idem, sauf qu’un clic sur Annuler/Fermer n’interrompt pas le programme mais retourne la valeur None
inputString(prompt) Ouvre une boîte de dialogue modale avec les boutons OK/Annuler. OK retourne la chaine entrée. Un clic sur Annuler ou Fermer termine le programme.
inputString(prompt, False) Idem, sauf qu’un clic sur Annuler/Fermer n’interrompt pas le programme mais retourne la valeur None
input(prompt) Ouvre une boîte de dialogue modale avec les boutons OK/Annuler. OK retourne le nombre entier, le nombre flottant ou la chaine de caractères saisie par l’utilisateur. Les boutons Annuler ou Fermer terminent le programme.
input(prompt, False) Idem, sauf qu’un clic sur Annuler/Fermer n’interrompt pas le programme mais retourne la valeur None
askYesNo(prompt) Ouvre une boîte de dialogue modale avec les boutons Oui/Non. Oui retourne True et Non retourne False. Les boutons Annuler ou Fermer terminent le programme.
askYesNo(prompt, False) Idem, sauf qu’un clic sur Annuler/Fermer n’interrompt pas le programme mais retourne la valeur None