Aller au contenu

Workshop TurtleStitch: broderie et code

INTRODUCTION

TurtleStitch est une application web qui permet de créer des motifs de broderie avec du code.

TurtleStitch est basée sur les Turtle Graphics, des dessins réalisés avec une tortue téléguidée par le langage de programmation LOGO. LOGO est inventé, à la fin des années 60, par le mathématicien Seymour Papert et se base sur les observations du psychologue Jean Piaget. Piaget étudie les fonctionnements de l’apprentissage, notamment chez l’enfant. Un enfant a du mal à comprendre la projection cartésienne, les repères cardinaux mais a plutôt une perception de l’espace relative à soi-même. La tortue téléguidée suit le fonctionnement de l’enfant. Pour la guider, il faut se mettre à sa place, lui dire de tourner de tant de degrés par rapport à là où elle regarde, d’avancer de tant de mètre par rapport à là où elle se trouve…

    

Les enfants apprenent donc à décomposer les mouvements d’un dessin pour en donner les instructions au robotortue. Ensuite, iels peuvent apprendre les principes de la programmation: des constructions géométriques, des répétitions, des variables…

↑↑↑ Ici, un pentagone est répété (boucle for ou repeat) avec une variable rayon qui augmente à chaque itération.

TurtleStitch est donc une adaptation de TurtleGraphics dédié à la broderie. Il incorpore les différents points de broderie et permet de détecter s’il y aura un problème pendant la broderie (trop de fils au même endroit, longueur de fil problématique…). De plus, TurtleStitch propose une interface graphique de type Scratch ou encore Blocks qui est aussi adapté aux enfants avec une analogie au puzzle. De plus, le logiciel, mais aussi les instructions de programmation, est traduit dans beaucoup de langues alors que la plupart des langages de programmation utilisent l’anglais. Ce qui facilite aussi l’apprentissage par les enfants.

↑↑↑ TurtleStitch en action par une enfant de huit ans

TURTLESTITCH

https://www.turtlestitch.org

Sur la gauche, on trouve l’annuaire des commandes classées par catégories. Pour utiliser une commande, on clique dessus et on glisse sur l’espace de travail du milieu. Les commandes s’emboîtent comme des pièces de puzzle. Pour exécuter le code, on clique sur le bloc. On peut cliquer plusieurs fois dessus pour l’exécuter plusieurs fois. Par exemple, ici en ayant cliqué 23 fois, on a quasiment un cercle. Le bouton reset permet d’effacer le canevas et de remettre la tortue au milieu.

↑↑↑ Interface de TurtleStitch

↑↑↑ TurtleStitch permet de se rendre compte si une zone trop dense qui posera des problèmes lors de la broderie.

Commandes Pour dessiner

Il y a deux zones dans l’espace de travail. La plus grande mesure 20×20cm; et la plus petite avec une grille plus fine mesure 10×10cm. La tortue commence toujours au milieu du canevas en regardant vers la droite.

  • (Contrôle) reset → Efface le dessin et remet la tortue au centre

  • (Mouvement) avancer de [ ] pas

  • (Mouvement) tourner de [ ] degrés ↻ → tourner de [ ] dans le sens des aiguilles d’une montre

  • (Mouvement) tourner de [ ] degrés ↺ → tourner de [ ] dans le sens inverse des aiguilles d’une montre

Commandes Spécifiques à la broderie

↑↑↑ Les différents points de broderie disponibles

  • (Embroidery) running stitch by [ ] steps

  • (Embroidery) triple run by [ ]

  • (Embroidery) cross stitch in [ ] by [ ]

  • (Embroidery) zigzag with density [ ] width [ ]

  • (Embroidery) Z-stitch with density [ ] width [ ]

  • (Embroidery) satin stitch with width [ ]

  • (Embroidery) tatami stitch width [ ] interval [ ]

  • (Embroidery) jump stitch → se déplacer sans faire de point de broderie

  • (Embroidery) tie stitch → faire un nœud

  • (Embroidery) trim → couper le fil

Éléments de programmation

  • (Variables) Make a variable → Créer une variable dont vous choisirez le nom. Cette variable s’affichera alors dans l’onglet «Variables» et vous pouvez la glisser-déposer dans votre code pour pouvoir l’utiliser.

  • (Variables) set [ ] to [ ] → Change la valeur de votre variable

  • (Variables) change [ ] by [ ] → Incrémente la valeur de votre variable

  • (Variable) Make a block → Permet d’enregistrer tout un bloc d’instructions dans un nouveau bouton. Cela permet de réutiliser son code de manière plus légère.

  • (Contrôle) repeat [ ] → Répéte [ ] fois les instructions comprises dans le bloc «repeat»

  • (Operators) pick random [ ] to [ ] → Pioche un nombre aléatoire entre [ ] et [ ]

↑↑↑ Exemple de création d’un nouveau bloc