Easy Designs - Turtle Graphics Python

Regardez la beauté des images. Ce sont des choses comme celles-ci qui m'ont mis en tortue. Pour être honnête, j'étais fan de MS Logo à l'âge de 7 ans, alors quand j'ai lu quelque chose de similaire appelé «Turtle», j'étais naturellement sceptique. Plus maintenant.

Généralement, les programmeurs d'élite qualifient la tortue de «primitive», mais je vous prie de ne pas être d'accord.

Dans cet Instructable, je vais écrire un guide très simple pour les tortues, en Python.

Une autre excellente utilisation de la tortue consiste à enseigner aux enfants la programmation de base. Les jeunes sont fascinés par les designs visuellement attrayants plutôt que par le texte.

Commençons.

EDIT: Pour une raison quelconque, le code contient du HTML, comme

,

, lorsque je le télécharge. Si tel est le cas, il existe un fichier bloc-notes avec les deux codes. Télécharge le. J'espère que le problème est résolu :(

Étape 1: Python

Pour ce tutoriel, j'utiliserai Python 2.7. 1.) Python peut être téléchargé gratuitement ici. (J'ai utilisé cette version particulière, mais c'est à vous de décider ce que vous voudriez.) Même si vous ne connaissez pas Python, vous pouvez rester, mais essayez d'apprendre la langue. C'est, à mon avis, un langage très simple mais puissant.

Turtle est un module intégré et peut être importé, nous n'avons donc pas besoin de l'importer.

En termes simples, un module est un ensemble facilement appelable de fonctions de programmation, c'est-à-dire des commandes permettant à l'ordinateur de suivre un certain ensemble d'étapes pour obtenir des résultats.

Étape 2: La première conception: code et explication

# Ce qui vient après le # n'est pas vu par python. Ce sont des commentaires. :)

from turtle import * # importe la module turtle,
# * représente tout, ce qui facilite les choses

speed (0) # définit la vitesse de dessin à 0, qui est la plus rapide
pencolor ('white') # définit la couleur du stylo / des lignes sur blanc
bgcolor ('black') # définit la couleur de l'arrière-plan / du canevas sur noir

x = 0 # crée une variable x avec la valeur 0
up () # soulève le stylo, donc aucune ligne n'est dessinée

#note fd () signifie avancer, bk () signifie reculer
# rt () ou lt () signifie incliner vers la droite d'un certain angle

rt (45)
fd (90)
rt (135)

down () # pose le stylo pour que la tortue puisse dessiner
tandis que x <120: # tandis que la valeur de x est inférieure à 120,
# faites ceci en continu:
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)
fd (200)
rt (61)

rt (11.1111)
x = x + 1 # ajoute 1 à la valeur de x,
# pour qu'il soit plus proche de 120 après chaque boucle

exitonclick () # Lorsque vous cliquez, la tortue se ferme.

#C'est tout! Essayez de personnaliser le script! 8)

Le code est explicite (speed), pencolor (), fd (), rt (), lt (), etc. sont toutes des fonctions. Fondamentalement, ce sont des instructions que Python doit suivre. Le résultat sera la beauté.

Plutôt que de le garder comme ça, essayez d'utiliser une logique simple pour créer de plus beaux designs.

Après avoir enregistré en appuyant sur Ctrl + S, exécutez en appuyant sur F5. Le résultat sous forme de vidéo.

Pièces jointes

  • TurtleCode1.txt Télécharger

Étape 3: Deuxième conception: Cool Spiral

Que dois-je dire? La beauté du code est qu'il génère une combinaison unique de couleurs à chaque exécution.

Le code est à nouveau bien commenté et explicite. Il y a aussi une vidéo.

de l'importation de tortues *

depuis random import randint # depuis le module random importez la fonction randint
#Comme la tortue, c'est un module, lisez-le à l'avance pour l'utiliser

vitesse (0)

bgcolor ('noir')

x = 1

tandis que x <400:

r = randint (0, 255) # crée des variables r, g, b dont la valeur est un entier,
g = randint (0, 255) # qui est compris entre 0 et 255. Il est aléatoire et
b = randint (0, 255) # change à chaque exécution de la boucle

colormode (255) # c'est quelque chose qui n'est pas pertinent à ce stade
# consultez le lien pythondocs à la fin pour plus d'informations


pencolor (r, g, b) # change la couleur du stylo en coordonnées rgb
# obtenu par les variables r, g, b changeant à chaque fois

fd (50 + x)
rt (90, 911)


x = x + 1

exitonclick ()

# encore, essayez de personnaliser :)

Pièces jointes

  • TurtleCode2.txt Télécharger

Étape 4: Conclusion

Aussi fier que vous puissiez être à ce stade, vous avez à peine gratté la surface. Les gens font des choses aussi complexes que des arbres fractals avec du python.

Si la tortue est votre truc, consultez la tortue et apprenez-en plus sur PythonDocs, où elle est bien documentée. Il existe de nombreux autres aspects tels que les remplissages et les cercles. Expérimentez et amusez-vous.

J'espère avoir inspiré quelqu'un, et il continue d'apprendre le python. C'est, à mon avis, le langage de programmation le plus simple, mais le plus puissant.

Pour vous impressionner davantage, je laisse le code d'un triangle arc-en-ciel. Celui-ci est une version personnalisée d'une question StackOverflow:

tortue d'importation
tortue.setup (largeur = 600, hauteur = 500)
turtle.reset ()
turtle.hideturtle ()
tortue.vitesse (0)

turtle.bgcolor ('noir')

c = 0
x = 0

couleurs = [
# couleurs rougeâtres
(1, 00, 0, 00, 0, 00), (1, 00, 0, 03, 0, 00), (1, 00, 0, 05, 0, 00), (1, 00, 0, 07, 0, 00), (1, 00, 0, 10, 0, 00), (1, 00, 0, 12, 0, 00), (1, 00, 0, 15, 0, 00), (1, 00, 0, 17, 0, 00), (1, 00, 0, 20, 0, 00), (1, 00, 0, 23, 0, 00), (1, 00, 0, 25, 0, 00), (1, 00, 0, 28, 0, 00), (1, 00, 0, 30, 0, 00), (1, 00, 0, 33, 0, 00), (1, 00, 0, 35, 0, 00), (1, 00, 0, 38, 0, 00), (1, 00, 0, 40, 0, 00), (1, 00, 0, 42, 0, 00), (1, 00, 0, 45, 0, 00 ), (1, 00, 0, 47, 0, 00),
# couleurs oranges
(1, 00, 0, 50, 0, 00), (1, 00, 0, 53, 0, 00), (1, 00, 0, 55, 0, 00), (1, 00, 0, 57, 0, 00), (1, 00, 0, 60, 0, 00), (1, 00, 0, 62, 0, 00), (1, 00, 0, 65, 0, 00), (1, 00, 0, 68, 0, 00), (1, 00, 0, 70, 0, 00), (1, 00, 0, 72, 0, 00), (1, 00, 0, 75, 0, 00), (1, 00, 0, 78, 0, 00), (1, 00, 0, 80, 0, 00), (1, 00, 0, 82, 0, 00), (1, 00, 0, 85, 0, 00), (1, 00, 0, 88, 0, 00), (1, 00, 0, 90, 0, 00), (1, 00, 0, 93, 0, 00), (1, 00, 0, 95, 0, 00 ), (1, 00, 0, 97, 0, 00),
# couleurs jaunes
(1, 00, 1, 00, 0, 00), (0, 95, 1, 00, 0, 00), (0, 90, 1, 00, 0, 00), (0, 85, 1, 00, 0, 00), (0, 80, 1, 00, 0, 00), (0, 75, 1, 00, 0, 00), (0, 70, 1, 00, 0, 00), (0, 65, 1, 00, 0, 00), (0, 60, 1, 00, 0, 00), (0, 55, 1, 00, 0, 00), (0, 50, 1, 00, 0, 00), (0, 45, 1, 00, 0, 00), (0, 40, 1, 00, 0, 00), (0, 35, 1, 00, 0, 00), (0, 30, 1, 00, 0, 00), (0, 25, 1, 00, 0, 00), (0, 20, 1, 00, 0, 00), (0, 15, 1, 00, 0, 00), (0, 10, 1, 00, 0, 00 ), (0, 05, 1, 00, 0, 00),
# couleurs verdâtres
(0, 00, 1, 00, 0, 00), (0, 00, 0, 95, 0, 05), (0, 00, 0, 90, 0, 10), (0, 00, 0, 85, 0, 15), (0, 00, 0, 80, 0, 20), (0, 00, 0, 75, 0, 25), (0, 00, 0, 70, 0, 30), (0, 00, 0, 65, 0, 35), (0, 00, 0, 60, 0, 40), (0, 00, 0, 55, 0, 45), (0, 00, 0, 50, 0, 50), (0, 00, 0, 45, 0, 55), (0, 00, 0, 40, 0, 60), (0, 00, 0, 35, 0, 65), (0, 00, 0, 30, 0, 70), (0, 00, 0, 25, 0, 75), (0, 00, 0, 20, 0, 80), (0, 00, 0, 15, 0, 85), (0, 00, 0, 10, 0, 90 ), (0, 00, 0, 05, 0, 95),
# couleurs bleues
(0, 00, 0, 00, 1, 00), (0, 05, 0, 00, 1, 00), (0, 10, 0, 00, 1, 00), (0, 15, 0, 00, 1, 00), (0, 20, 0, 00, 1, 00), (0, 25, 0, 00, 1, 00), (0, 30, 0, 00, 1, 00), (0, 35, 0, 00, 1, 00), (0, 40, 0, 00, 1, 00), (0, 45, 0, 00, 1, 00), (0, 50, 0, 00, 1, 00), (0, 55, 0, 00, 1, 00), (0, 60, 0, 00, 1, 00), (0, 65, 0, 00, 1, 00), (0, 70, 0, 00, 1, 00), (0, 75, 0, 00, 1, 00), (0, 80, 0, 00, 1, 00), (0, 85, 0, 00, 1, 00), (0, 90, 0, 00, 1, 00 ), (0, 95, 0, 00, 1, 00)
]

tandis que x <1000:
idx = int (c)
color = couleurs [idx]
turtle.color (couleur)
tortue.en avant (x)
tortue.à droite (98)
x = x + 1
c = c + 0, 1

turtle.exitonclick ()

Comme tâche, essayez de faire un triangle de Sierpinski. Cela demande beaucoup de réflexion.

Aussi, votez pour cet instructable si vous l'avez aimé !!!

Articles Connexes