Modifications

Sauter à la navigation Sauter à la recherche
5 083 octets ajoutés ,  22 mars 2020 à 12:41
aucun résumé de modification
Ligne 1 : Ligne 1 :  
{{Python-Turtle-Online-NAV}}
 
{{Python-Turtle-Online-NAV}}
   −
{{traduction}}
+
== Démarrer Turtle ==
 +
Voici une petite série d'exemples Turtle dont la complexité du code augmente progressivement.
 +
 
 +
Cela permet de se faire une petite idée des possibilités offertes par Turtle, vous pouvez tester ces script directement dans [https://repl.it/languages/python_turtle Turtle sur REPL.it].
 +
 
 +
{{download-box|Démarrer Python Turtle en ligne|https://repl.it/languages/python_turtle}}
    
== Changer de couleur ==
 
== Changer de couleur ==
Ligne 56 : Ligne 61 :  
[[fichier:Python-Turtle-Exemple2-11a.png]]
 
[[fichier:Python-Turtle-Exemple2-11a.png]]
    +
=== Code couleur RGB ===
 +
Il est également possible d'utiliser la notation RGB tel qu'utilisé dans les feuilles de styles des pages HTML.
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
t = turtle.Turtle()
 +
 +
t.pencolor("#FF0000") # Rouge
 +
t.forward( 50 )
 +
t.left( 35 )
 +
 +
t.pencolor("#00FF00") # Vert
 +
t.forward( 50 )
 +
t.left( 35 )
 +
 +
t.pencolor("#0000FF") #Bleu
 +
t.forward( 50 )
 +
t.left( 35 )
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[fichier:Python-Turtle-Exemple2-11b.png]]
 +
 +
La syntaxe utilisé pour mentionner la couleur "#00FF00" pour du vert peut paraître totalement incompréhensible sans les connaissances adéquates.
 +
 +
Heureusement, il y a l'outil [https://www.w3schools.com/colors/colors_picker.asp '''HTML Color Picker''' de W3Schools (www.w3schools.com/colors/colors_picker.asp)].
 +
 +
Cet outil permet de sélectionner une couleur et d'obtenir le code couleur sous différentes formes.
 +
 +
[[Fichier:Python-Turtle-Exemple2-20.png]]
 +
 +
Dans l'exemple ci-dessus, nous voyons que la couleur rose bonbon sélectionnée correspond au code RGB '''#FF0066''' .
 +
 +
Code couleur qui peut être utilisé dans un script Turtle comme ci-dessous:
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
t = turtle.Turtle()
 +
 +
t.pencolor("#ff0066")
 +
 +
for i in range(50):
 +
  t.forward(2)
 +
  t.left(90)
 +
  t.forward(80)
 +
  t.right(90)
 +
  t.forward(2)
 +
  t.right(90)
 +
  t.forward(80)
 +
  t.left(90)
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple2-11c.png]]
 +
 +
== Remplissage ==
 +
Dans l'exemple suivant, {{fname|fillcolor()}}, {{fname|begin_fill()}} et {{fname|end_fill()}} sont utilisés pour remplir un polygone (un triangle) dessiné avec la tortue.
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
t = turtle.Turtle()
 +
t.fillcolor('yellow')
 +
# Faire un triangle SANS remplissage
 +
t.forward(50)
 +
t.right(90)
 +
t.forward(50)
 +
t.right(135)
 +
t.forward(71)
 +
# Faire un triangle AVEC remplissage
 +
t.begin_fill()
 +
t.forward(50)
 +
t.right(90)
 +
t.forward(50)
 +
t.right(135)
 +
t.forward(71)
 +
t.end_fill()</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple2-14.png]]
 +
 +
== Variables ==
 +
Une variable est une zone mémoire utilisée pour mémoriser une valeur, un peu comme on stocke un objet dans un tiroir.
 +
 +
La variable porte un nom, ce qui permet de retrouver facilement la valeur facilement dans la mémoire de l'ordinateur, un peu comme une étiquette apposée sur le tiroir et portant le nom de l'objet (son identifiant).
 +
 +
Ainsi l'écriture de {{fname|1=a = 10}} stocke la valeur 10 dans une variable nommée {{fname|a}} . Il est alors possible d'utiliser le mon de la variable à la place de la valeur lors de l'exécution d'une commande.
 +
 +
{{underline|'''Exemple 1:'''}}
 +
 +
Dans l'exemple suivant, la variable {{fname|long}} contient la longueur du côté d'un carré. En modifiant la valeur de la variable, l'utilisateur change la taille du carré dessiné.
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
t = turtle.Turtle()
 +
 +
long = 150 # Valeur à modifier
 +
 +
for i in range(4):
 +
  t.forward(long)
 +
  t.left(90)
 +
</syntaxhighlight>
 +
 +
{{underline|'''Exemple 2:'''}}
 +
 +
Dans cet autre exemple, plusieurs variables sont utilisées pour stocker les différentes valeurs nécessaire au tracé d'un polygone.
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
t = turtle.Turtle()
 +
 +
cote = 6  # Nombre de cotés
 +
long = 70  # Longeur du coté
 +
angle = 360.0 / cote # Angle de rotation
 +
 +
for i in range(cote):
 +
    t.forward(long)
 +
    t.right(angle)
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple2-12.png]]
 +
 +
== déplacement absolu ==
 +
 +
La commande {{fname|setposition(x,y)}} permet de déplacer la tortue directement aux coordonnées mentionnées.
 +
{{ambox|Modifier la position de la tortue ne modifie pas son orientation!}}
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
t = turtle.Turtle()
 +
 +
t.dot() # dessine un point
 +
 +
# Déplace la tortue x=0, y=25
 +
t.setposition( 0, 25 )
 +
t.dot()
 +
 +
# Lève crayon pour ne plus
 +
# tracer de ligne
 +
t.penup()
 +
 +
t.setposition( 0, 50 )
 +
t.dot()
 +
 +
# Baisser le crayon pour
 +
# tracer des lignes
 +
t.pendown()
 +
 +
t.setposition( 50, 50 )
 +
t.dot()
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple2-13.png]]
 +
 +
== Augmenter la vitesse ==
 +
Il est possible d'augmenter la vitesse de dessin à l'aide de la commande {{fname|speed(vitesse)}} . En précisant une valeur de 20, les fonctions de tracés seront beaucoup plus rapide (utiliser 1 pour le plus lent).
 +
 +
<syntaxhighlight lang="python">
 +
import turtle
 +
l = turtle.Turtle()
 +
 +
l.speed(20)
 +
 +
for i in range(180):
 +
    l.forward(100)
 +
   
 +
    l.penup()  # lever le crayon
 +
    l.setposition(0, 0)
 +
    l.pendown() # Baisser le crayon
 +
   
 +
    l.right(2)
 +
</syntaxhighlight>
 +
 +
Résultat attendu:
 +
 +
[[Fichier:Python-Turtle-Exemple2-15.png]]
    
{{Python-Turtle-Online-TRAILER}}
 
{{Python-Turtle-Online-TRAILER}}
29 917

modifications

Menu de navigation