Rosace avec ses 6 cercles + son cercle central |
Construction
- Tracer les axes
- Tracer le premier cercle centré sur l'origine
- Parcourir sur 30° le premier cercle et placer un point
- Orienter la tortue de 90° sur un axe centrifuge
- S'éloigner du diamètre du cercle de la longueur du rayon
- Orienter la tortue tangentiellement au prochain cercle
- Tracer le cercle
- Retourner au centre (home)
- Pour les cercles suivants, ajouter 60°
- Parcourir sur 30° + 60° sur le premier cercle et placer un point
- etc...
Suite à donner
- Insérer une boucle pour simplifier le code
Voir ici
https://ptroulet.blogspot.com/2019/08/turtle-creer-une-rosace-avec-6-cercles.html - Utiliser les angles en les fonctions sinusoïdales pour généraliser la création de n cercles autour d'un cercle centrale
Script
from turtle import *
# dessin des axes
home()
penup()
goto(-200,0)
pendown()
fd(400)
penup()
goto(0,-200)
pendown()
left(90)
fd(400)
penup()
home()
# cercle centree 0,0
goto(0,-50)
pendown()
pencolor("red")
circle(50)
penup()
home()
# 1er cercle bleu centree 50,0
goto(0,-50)
circle(50,30)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
# 2eme cercle bleu centree 50,0
goto(0,-50)
circle(50,30+60)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
# 3eme cercle bleu centree 50,0
goto(0,-50)
circle(50,30+60+60)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
# 4eme cercle bleu centree 50,0
goto(0,-50)
circle(50,30+60+60+60)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
# 5eme cercle bleu centree 50,0
goto(0,-50)
circle(50,30+60+60+60+60)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
# 6eme cercle bleu centree 50,0
goto(0,-50)
circle(50,30+60+60+60+60+60)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
En plus court avec une boucle
from turtle import *
# dessin des axes
home()
penup()
goto(-200,0)
pendown()
fd(400)
penup()
goto(0,-200)
pendown()
left(90)
fd(400)
penup()
home()
# cercle centree 0,0
goto(0,-50)
pendown()
pencolor("red")
circle(50)
penup()
home()
for i in range (6):
goto(0,-50)
circle(50,30+i*60)
dot()
penup()
right(90)
forward(50)
right(-90)
pendown()
pencolor("blue")
circle(50)
penup()
home()
Aucun commentaire:
Enregistrer un commentaire
Tout commentaire nous engage ;)