Génération d'une Rose avec le Module Turtle de Python

Ce tutoriel vous guidera dans la création d'une rose détaillée, comprenant son cœur, ses pétales et ses feuilles, à l'aide du module turtle de Python. Le module turtle, inclus dans la bibliothèque standard de Python, est un outil graphique et d'animation idéal pour les débutants souhaitant apprendre les bases de la programmation et du dessin.

Configuraton Initiale


import turtle

# Déplacer la tortue à une position de départ
turtle.penup()       # Lever le crayon pour un déplacement sans traçage
turtle.left(90)      # Orienter la tortue vers le haut
turtle.forward(200)  # Avancer de 200 unités
turtle.pendown()     # Abaisser le crayon pour commencer à dessiner
turtle.right(90)     # Orienter la tortue vers la droite

Ce segment de code initialise l'environnement de dessin en important le module turtle et en positionnant la "tortue" (le curseur de dessin) en haut de la zone de dessin, préparant ainsi le terrain pour la création du motif floral.

Dessin du Cœur de la Fleur


# Peindre le cœur
turtle.fillcolor("red")    # Choisir la couleur de remplissage (rouge)
turtle.begin_fill()        # Démarrer la zone de remplissage
# ... Séquence de commandes pour dessiner des arcs et des lignes ...
turtle.end_fill()          # Terminer la zone de remplissage

Le cœur est formé par une combinaison d'arcs de cercle et de lignes droites. Les fonctions begin_fill() et end_fill() permettent de colorier l'intérieur de cette forme complexe.

Création des Pétales


# Premier pétale
turtle.left(150)           # Orienter la tortue
turtle.circle(-90, 70)     # Dessiner un arc de cercle partiel
# ... Autres commandes pour construire le pétale ...

# Deuxième pétale
turtle.left(180)           # Inverser la direction
turtle.circle(90, 40)      # Dessiner un autre arc de cercle partiel
# ... Autres commandes pour construire le pétale ...

Les pétales sont également créés en combinant des arcs de cercle et des lignes. La modification de l'orientation et de la position de la tortue permet de sculpter les formes des pétales.

Ajout des Feuilles


# Première feuille
turtle.forward(30)         # Avancer sur une courte distance
turtle.left(90)            # Pivoter à 90 degrés
# ... Déplacement vers la position de la feuille ...
turtle.fillcolor("green")  # Définir la couleur de remplissage (vert)
turtle.begin_fill()        # Commencer le remplissage
# ... Dessin du contour de la feuille ...
turtle.end_fill()          # Terminer le remplissage

# Deuxième feuille
# ... Procédé similaire ...

La création des feuilles suit une logique similaire à celle du cœur : déplacement vers la position adéquate, puis utilisation d'arcs et de lignes pour définir la forme, suivie d'un remplissage de couleur.

Code Complet


import turtle

# Configuration de la position initiale
turtle.penup()
turtle.left(90)
turtle.forward(200)
turtle.pendown()
turtle.right(90)

# Dessin du cœur
turtle.fillcolor("red")
turtle.begin_fill()
turtle.circle(10, 180)
turtle.circle(25, 110)
turtle.left(50)
turtle.circle(60, 45)
turtle.circle(20, 170)
turtle.right(24)
turtle.forward(30)
turtle.left(10)
turtle.circle(30, 110)
turtle.forward(20)
turtle.left(40)
turtle.circle(90, 70)
turtle.circle(30, 150)
turtle.right(30)
turtle.forward(15)
turtle.circle(80, 90)
turtle.left(15)
turtle.forward(45)
turtle.right(165)
turtle.forward(20)
turtle.left(155)
turtle.circle(150, 80)
turtle.left(50)
turtle.circle(150, 90)
turtle.end_fill()

# Création du premier pétale
turtle.left(150)
turtle.circle(-90, 70)
turtle.left(20)
turtle.circle(75, 105)
turtle.setheading(60)
turtle.circle(80, 98)
turtle.circle(-90, 40)

# Création du deuxième pétale
turtle.left(180)
turtle.circle(90, 40)
turtle.circle(-80, 98)
turtle.setheading(-83)

# Dessin de la première feuille
turtle.forward(30)
turtle.left(90)
turtle.forward(25)
turtle.left(45)
turtle.fillcolor("green")
turtle.begin_fill()
turtle.circle(-80, 90)
turtle.right(90)
turtle.circle(-80, 90)
turtle.end_fill()

turtle.right(135)
turtle.forward(60)
turtle.left(180)
turtle.forward(85)
turtle.left(90)
turtle.forward(80)

# Dessin de la deuxième feuille
turtle.right(90)
turtle.right(45)
turtle.fillcolor("green")
turtle.begin_fill()
turtle.circle(80, 90)
turtle.left(90)
turtle.circle(80, 90)
turtle.end_fill()

turtle.left(135)
turtle.forward(60)
turtle.left(180)
turtle.forward(60)
turtle.right(90)
turtle.circle(200, 60)
turtle.done() # Terminer le dessin et garder la fenêtre ouverte

En exécutant ce code, une rose complexe, composée d'un cœur, de pétales et de feuilles, est générée à l'écran. Cet exemple illustre la capacité du module turtle à produire des œuvres visuelles riches à partir d'éléments graphiques simples. Il constitue une excellente introduction à la programmation graphique pour les débutants et stimule l'intérêt pour l'infographie et la programmation en Python.

Étiquettes: Python Turtle graphisme Dessin programmation

Publié le 7 juillet à 00h33