Le module Turtle de Python permet de dessiner en faisant se déplacer dans une fenêtre une "tortue" munie d'un "stylo"; on peut abaisser ou remonter le stylo, changer de couleur, faire avancer ou reculer la tortue, la faire
tourner à gauche ou à droite,etc...
Vous pouvez découvrir ici les fonctions principales fournies par le module Turtle.
Le module s'importe en début de script avec l'instruction :
from turtle import *
Par défaut, la tortue ne fait que tracer des lignes; vous allez enrichir ses possibilités en écrivant quelques fonctions, de façon à pouvoir dessiner des figures plus sophistiquées.
Vous noterez que ces fonctions ont bien des paramètres, mais ne renvoient aucun résultat; dans certains langages, on appelle de telles fonctions des procédures, mais Python ne fait pas la
distinction et nous continuerons donc à parler de fonction.
Fonction carré
Voila un exemple de fonction qui permet de tracer un carré :
from turtle import *
def carre():
down()
for i in range(4):
forward(50)
right(90)
up()
# à placer EN FIN de programme principal
done()
utiliser cette fonction pour analyser son fonctionnement.
modifier cette fonction de façon à pouvoir tracer un carré de longueur de côté quelconque passée en argument à la fonction
modifier enfin cette fonction de façon à pouvoir tracer un carré de longueur de côté quelconque, et pivoté d'un angle quelconque par rapport à l'horizontale. Attention, en fin de fonction, il faudra "compenser" cet angle dont la tortue
aura tourné, de façon à ce qu'elle revienne dans la direction où elle allait avant l'appel de la fonction.
Utiliser la fonction que vous venez de définir pour réaliser les figures suivantes :
Voila une fonction qui dessine un triangle équilatéral :
from turtle import *
def etoile():
down()
for i in range(3):
forward(50)
right(180 - 180/3)
up()
# à placer EN FIN de programme principal
done()
utiliser cette fonction pour analyser son fonctionnement
modifier cette fonction de façon à pouvoir tracer une étoile à 5 branches, puis une étoile à 7 branches
modifier cette fonction de façon à pouvoir tracer une étoile comportant un nombre quelconque ( impair ! ) de branches, et de longueur de branche quelconque, passés en arguments à la fonction
Utiliser la fonction que vous venez de définir pour réaliser un ciel étoilé comme la figure ci-dessous :
Une vingtaine d'étoiles de taille, de couleur et de nombre de branches aléatoires, placées au hasard...
Écrire une fonction qui permet de tracer une "étincelle" comme ci-contre, avec un nombre n quelconque de "rayons" et une longueur d quelconque pour ces rayons.
Utiliser cette fonction pour créer un "ciel d'étincelles", de tailles et de formes différentes.