Python possède de nombreux modules qui fournissent des fonctionnalités pour une grande variété de tâches. L’un de ces modules est le module turtle, qui est souvent utilisé pour enseigner visuellement aux programmeurs débutants.
Vous pouvez utiliser le module tortue pour dessiner des graphiques tels que des lignes ou des formes sur un canevas. Au départ, vous pouvez faire apparaître une ou plusieurs tortues sur le canevas, ce qui représente des points que vous pouvez déplacer. Lorsque vous vous déplacez, les tortues dessinent des lignes d’un point à un autre.
Vous pouvez dessiner diverses formes avec cette méthode, notamment des carrés, des triangles et des cercles.
Comment utiliser les tortues pour dessiner des formes
Vous pouvez utiliser Python pour créer de nombreux programmes pratiques, comme une palette de couleurs. Pour dessiner des tortues en Python, vous aurez d’abord besoin d’un canevas, et d’un objet tortue pour dessiner les formes. Si nécessaire, vous pouvez réviser certains exemples Python de base.
- Créez un nouveau fichier appelé shapes.py.
- En haut du fichier, importez le module turtle :
import turtle - Utilisez le module turtle pour créer une nouvelle fenêtre. Celle-ci servira de toile pour dessiner des formes :
window = turtle.Screen()
window.bgcolor("white") - Créez un nouvel objet tortue, et définissez sa forme et sa couleur :
turtle_1 = turtle.Turtle()
turtle_1.shape("turtle")
turtle_1.color("red") - Au bas du fichier, utilisez la fonction exitonclick() pour garder le canevas ouvert. Le canevas ne se fermera que lorsque vous cliquerez dessus. Veillez à conserver cette ligne comme dernière commande de votre programme, sinon vous obtiendrez une erreur.
window.exitonclick() - Ouvrez une invite de commande ou un terminal, et naviguez jusqu’au dossier où vous avez stocké votre script Python. Par exemple, si vous avez stocké votre fichier Python sur le bureau d’un PC Windows, votre commande ressemblerait à ceci :
cd C:\Users\Sharl\Desktop - Exécutez la commande python pour ouvrir le canevas de la tortue. Par défaut, la direction initiale de la tortue est orientée vers la droite :
Comment dessiner des carrés et des rectangles ?
Dessinez un carré ou un rectangle en utilisant une tortue sur un canevas. Utilisez les fonctions forward() et backward() pour déplacer la tortue. Vous pouvez également utiliser les fonctions left() ou right() pour changer la direction vers laquelle la tortue est tournée.
- Puisque la tortue est déjà orientée dans une première direction, avancez de 100 pixels pour dessiner la première ligne du carré :
turtle_1.forward(100) - Tournez à droite de 90 degrés pour faire face à une direction vers le bas. Avancez à nouveau pour dessiner la deuxième ligne du carré :
turtle_1.right(90)
turtle_1.forward(100) - Continuez à tourner à droite de 90 degrés pour tracer les deux autres lignes. Pour conserver une forme carrée, assurez-vous que les bords ont tous 100 pixels chacun :
turtle_1.right(90)
turtle_1.forward(100)
turtle_1.right(90)
turtle_1.forward(100) - Pour transformer cette forme en un rectangle, modifiez le code pour que les deux côtés opposés aient une longueur supérieure :
turtle_1.forward(100)
turtle_1.right(90)
turtle_1.forward(200)
turtle_1.right(90)
turtle_1.forward(100)
turtle_1.right(90)
turtle_1.forward(200) - Relancez la commande python en utilisant une ligne de commande ou un terminal pour ouvrir le canevas et visualiser le rectangle :
Comment dessiner des triangles
Dessinez un triangle en utilisant les fonctions forward(), backward(), left(), ou right(). Puisque vous avez déjà dessiné un carré à la position de départ du canevas, dessinez le triangle sur une autre partie du canevas.
- Créez un nouvel objet tortue. Vous pouvez modifier la forme pour utiliser une flèche au lieu d’une tortue :
turtle_2 = turtle.Turtle()
turtle_2.shape("arrow")
turtle_2.color("blue") - Utilisez la fonction penup() pour décoller l’objet tortue du canevas, afin qu’il ne dessine plus de ligne :
turtle_2.penup() - Déplacez l’objet vers un autre point du canevas. Le canevas utilise un plan cartésien pour les coordonnées, donc le point d’origine est à 0, 0. Les coordonnées -250, 200 sont vers le coin supérieur gauche du canevas.
turtle_2.goto(-250, 200) - Utilisez la fonction pendown() pour replacer l’objet tortue sur le canevas, afin qu’il puisse recommencer à dessiner des lignes :
turtle_2.pendown() - Dessinez les trois côtés du triangle en tournant vers la gauche de 120 degrés trois fois. A chaque fois, trace une ligne pour créer le côté du triangle :
turtle_2.forward(100)
turtle_2.left(120)
turtle_2.forward(100)
turtle_2.left(120)
turtle_2.forward(100)
turtle_2.left(120) - Vous pouvez également créer le triangle en utilisant une boucle for :
for i in range(3):
turtle_2.forward(100)
turtle_2.left(120) - Réexécutez la commande python en utilisant une ligne de commande ou un terminal pour ouvrir le canevas et visualiser le triangle :
Comment dessiner des cercles
Utilisez la fonction circle() pour dessiner un cercle. Vous pouvez choisir le diamètre du cercle en entrant une valeur comme argument dans la fonction.
- Créez un autre objet tortue pour dessiner le cercle, et définissez ses propriétés de couleur et de forme :
turtle_3 = turtle.Turtle()
turtle_3.shape("circle")
turtle_3.color("green") - Déplacez la tortue vers une autre partie du canevas. Utilisez la fonction penup() pour empêcher l’objet de dessiner une ligne pendant son déplacement. Après avoir déplacé la tortue, replacez le stylo vers le bas :
turtle_3.penup()
turtle_3.goto(-100, 50)
turtle_3.pendown() - Utilisez la fonction circle() pour dessiner le cercle. Entrez le diamètre du cercle dans la fonction.
turtle_3.circle(50) - Relancez la commande python en utilisant une ligne de commande ou un terminal pour ouvrir le canevas et visualiser le cercle :
Comment dessiner des formes telles que les hexagones et les octogones ?
Pour dessiner des formes telles que des hexagones ou des octogones, vous pouvez utiliser une boucle for similaire à celle utilisée dans l’exemple du triangle. Vous pouvez spécifier un nombre égal de côtés, et créer ces côtés avec une longueur égale.
- Créez un nouvel objet tortue, et définissez ses propriétés de forme et de couleur :
turtle_4 = turtle.Turtle()
turtle_4.shape("turtle")
turtle_4.color("purple") - Déplacez l’objet tortue à un autre endroit du canevas :
turtle_4.penup()
turtle_4.goto(150,200)
turtle_4.pendown() - Dans un hexagone, au point de rencontre de chaque ligne, l’angle à ce point est de 60 degrés. Après avoir tracé une ligne, déplacez-vous de 60 degrés vers la droite pour tracer la ligne suivante. Fais cela pour les six côtés de l’hexagone :
for i in range(6):
turtle_4.forward(100)
turtle_4.right(60) - Vous pouvez dessiner d’autres types de formes avec des côtés égaux en divisant le nombre de côtés par 360 pour obtenir la valeur de l’angle. Pour un octogone, l’angle entre chaque côté est de 45 degrés. Pour chacun des huit côtés, tourne à droite de 45 degrés, et trace la ligne :
for i in range(8):
turtle_4.forward(100)
turtle_4.right(45) - Exécutez à nouveau la commande python à l’aide d’une ligne de commande ou d’un terminal pour ouvrir le canevas et visualiser l’hexagone ou l’octogone. Vous pouvez également consulter le code source complet de toutes les formes sur Github.
Apprendre la programmation graphique en créant des formes
Vous pouvez utiliser des graphiques basés sur la tortue pour dessiner différents types de formes sur un canevas. Pourquoi ne pas explorer d’autres façons de créer des formes à l’aide de Python, par exemple en utilisant une application JES.
