Tracé géométrique Scratch : corriger le décalage du lutin
Une erreur de tracé géométrique sur Scratch au collège est souvent interprétée trop vite comme un problème de programme: le lutin avance, tourne aux bons endroits, les blocs semblent cohérents, et…

Tracé géométrique Scratch: corriger le décalage du lutin
Une erreur de tracé géométrique sur Scratch au collège est souvent interprétée trop vite comme un problème de programme: le lutin avance, tourne aux bons endroits, les blocs semblent cohérents, et pourtant la ligne apparaît à côté de la mine du crayon, parfois même à quelques pixels de distance. Pour l’élève, c’est déstabilisant: il a l’impression que Scratch « dessine de travers » alors que son raisonnement est juste.
Nous remarquons que cette difficulté mêle en réalité deux plans que les débutants ont besoin d’apprendre à distinguer: le déplacement mathématique du lutin et la représentation graphique de ce lutin. Le script peut être exact tandis que le costume est mal construit pour l’usage que l’on veut en faire. Avant de corriger les blocs, il faut donc regarder où Scratch considère que se trouve le lutin.
Pourquoi le tracé semble décalé par rapport au lutin
L’extension Stylo ne dessine pas depuis n’importe quel point visible du personnage. Scratch trace à partir du centre du costume du lutin. Ce centre est matérialisé, dans l’éditeur de costumes, par une cible grise située au milieu de la zone de dessin.
Lorsque le lutin est une flèche, un point, une tortue ou une forme abstraite, ce choix est rarement gênant. En revanche, si nous utilisons l’image d’un crayon, d’un feutre ou d’un compas, l’élève attend naturellement que le trait sorte de la mine, de la pointe ou de la branche active de l’outil. Si cette pointe est éloignée du centre réel du costume, le décalage devient immédiatement visible.
Le programme ne fait alors rien d’étrange. Il déplace le point central du lutin; le stylo suit ce point; seule l’image du crayon est dessinée un peu à côté. C’est une différence discrète, mais elle pèse sur la compréhension: l’enfant peut se mettre à modifier les distances, les coordonnées ou les angles pour compenser un défaut qui ne vient pas de l’algorithme.
Un tracé décalé n’est pas forcément un programme faux: c’est souvent un costume dont le centre ne coïncide pas avec la pointe qui doit écrire.
Cette distinction est très féconde pédagogiquement. Elle aide à bâtir une première représentation de ce qu’est un objet programmé: un lutin possède à la fois une apparence, une position, une orientation et des scripts. Ces éléments fonctionnent ensemble, sans pour autant se confondre.
Le symptôme qui permet de reconnaître le problème
Le décalage de centre se reconnaît assez facilement. Il persiste dans toutes les directions:
- le lutin avance vers la droite, mais le trait commence au-dessus, au-dessous ou derrière sa mine;
- après une rotation, le trait reste décalé par rapport au lutin, tout en tournant avec lui;
- les segments ont souvent la bonne longueur et les sommets se ferment presque correctement, mais l’image du crayon semble « flotter » à côté du dessin;
- remplacer le lutin par un simple point centré fait disparaître le phénomène sans changer les blocs du script.
À l’inverse, si les côtés ne se rejoignent pas, si la figure s’ouvre progressivement ou si elle prend une forme inattendue, nous sommes plutôt face à un problème d’angle, de distance ou de répétition. Cette petite phase de diagnostic allège la charge cognitive: au lieu de corriger tout à la fois, l’élève sait dans quelle partie du projet chercher.
Réaligner le centre du costume dans Scratch
La correction se fait dans l’onglet Costumes, et non dans la zone des scripts. Scratch 3.0 ne propose pas un bouton séparé pour « définir le centre » comme les anciennes versions pouvaient le laisser entendre. Le réglage se fait directement par déplacement du dessin du costume vers la cible centrale.
Voici une progression simple, que nous pouvons mener avec un élève sans transformer l’opération en manipulation opaque.
1. Sélectionner le lutin qui sert à tracer. Dans la liste des lutins, choisissons celui qui porte le costume de crayon, de stylo ou de flèche. Il faut bien intervenir sur le lutin dessinateur, pas sur un décor.
2. Ouvrir l’onglet “Costumes”. Nous voyons alors le dessin du lutin sur une zone quadrillée. Au centre se trouve une cible grise: elle indique le point à partir duquel Scratch situe le costume et déclenche le tracé du stylo.
3. Prendre l’outil de sélection. L’outil en forme de flèche permet de sélectionner l’ensemble du dessin. C’est un point pratique: si l’on déplace seulement un petit élément du crayon, on risque de déformer le costume au lieu d’en déplacer le repère.
4. Sélectionner tout le costume. Encadrons le dessin ou utilisons la sélection globale selon la nature du costume. Vérifions que la mine, le corps et les éventuels détails font bien partie du même déplacement.
5. Faire glisser le dessin vers le centre. Déplaçons le costume jusqu’à ce que la mine du crayon, ou le point exact qui doit tracer, vienne se placer sur la cible centrale. Lorsque le point approche du centre, Scratch produit un effet d’aimantation: c’est le repère que nous cherchons.
6. Tester avec un segment court. Revenons aux scripts, effaçons la scène, puis demandons au lutin de tracer une ligne droite. Un déplacement de quelques pas suffit pour observer si le trait sort désormais de la mine.
L’aimantation est un détail d’interface, mais elle rend la manipulation beaucoup plus fiable qu’un positionnement visuel approximatif. L’outil de centrage avait été retiré au lancement de Scratch 3.0, en janvier 2019, puis l’éditeur a retrouvé cette aide au placement après les retours des utilisateurs. Pour une activité de géométrie, ce n’est pas un confort secondaire: un centre bien placé consolide le lien entre la position programmée et le trait observé.
La bonne question à poser à l’élève
Au lieu de dire simplement « mets le crayon au milieu », nous pouvons demander: « Quel point de ton image doit suivre exactement la trajectoire? »
La réponse n’est pas toujours la mine d’un crayon. Pour un robot qui laisse une trace, ce peut être le point de contact avec le sol. Pour une tortue, ce sera souvent le centre de son corps, ce qui est d’ailleurs cohérent avec son apparence. Pour une flèche, le choix dépend du projet: la pointe avant peut être parlante, mais le centre peut aussi suffire si l’on cherche avant tout à représenter un vecteur.
Cette mise en mots transforme une correction technique en décision de modélisation. Nous aidons ainsi l’enfant à percevoir que le dessin n’est pas seulement décoratif: il participe au sens de l’algorithme.
Un costume centré et un script juste ne corrigent pas la même erreur
Il est utile de comparer les deux approches, car elles répondent à des symptômes qui se ressemblent parfois à l’écran.
| Ce que l’on observe | Cause la plus probable | Où intervenir | Correction |
|---|---|---|---|
| La ligne est à côté de la mine du crayon, quelle que soit la direction | Centre du costume mal aligné | Onglet Costumes | Placer la mine sur la cible centrale |
| Le dessin forme une spirale ou ne referme pas le polygone | Angle de rotation incorrect | Zone Code | Calculer l’angle extérieur |
| Des traits anciens restent visibles et brouillent l’essai | Scène non nettoyée | Début du script | Utiliser le bloc d’effacement |
| Le dessin commence loin de l’endroit attendu | Position ou orientation héritée d’un essai précédent | Début du script | Replacer et orienter le lutin |
| Le trait est absent alors que le lutin se déplace | Stylo relevé | Zone Code | Mettre le stylo en position d’écriture |
Cette séparation est précieuse pour éviter une habitude fréquente: modifier au hasard plusieurs blocs jusqu’à ce que l’image « ressemble à quelque chose ». Le tâtonnement a sa place dans l’apprentissage, mais il devient réellement formateur lorsque nous pouvons relier chaque essai à une hypothèse précise.
Maîtriser les angles de rotation pour les polygones réguliers
Une fois le décalage du lutin corrigé, une autre erreur classique apparaît dans les activités Scratch de géométrie: le polygone ne se ferme pas. L’élève a pourtant repéré que le triangle équilatéral possède des angles de 60°, puis il programme une rotation de 60° après chaque côté. Le résultat est surprenant, parce que le lutin ne tourne pas selon l’angle intérieur de la figure: il tourne pour changer de direction.
C’est ici que la programmation apporte un appui particulièrement concret à la géométrie. Après avoir tracé un côté, le lutin doit effectuer l’angle extérieur, c’est-à-dire le complément de l’angle intérieur à 180°. Pour un polygone régulier à \(n\) côtés, la somme des changements de direction sur un tour complet vaut 360°. La rotation à programmer est donc:
360 ÷ nombre de côtés
| Figure régulière | Nombre de côtés | Angle de rotation du lutin |
|---|---|---|
| Triangle équilatéral | 3 | 120° |
| Carré | 4 | 90° |
| Pentagone régulier | 5 | 72° |
| Hexagone régulier | 6 | 60° |
| Octogone régulier | 8 | 45° |
Le cas du triangle est le plus révélateur. Son angle intérieur est bien de 60°, mais le lutin doit tourner de 120° pour poursuivre son chemin sur le côté suivant. Si nous utilisons 60°, il ne prend pas la nouvelle direction attendue: il dessine une forme qui paraît immédiatement incohérente, alors même que le nombre 60 n’est pas faux en géométrie.
Dans Scratch, le lutin ne lit pas l’angle du sommet comme sur une figure: il exécute le changement de direction nécessaire pour continuer son parcours.
Un script de base qui rend la formule visible
Pour tracer un polygone régulier, le cœur du raisonnement est très compact:
1. choisir le nombre de côtés;
2. calculer l’angle de rotation en divisant 360 par ce nombre;
3. répéter autant de fois qu’il y a de côtés;
4. avancer d’une même longueur, puis tourner de l’angle calculé.
Dans Scratch, nous pouvons d’abord écrire ce programme avec des nombres visibles, par exemple pour un hexagone: répéter 6 fois, avancer de 60 pas, tourner de 60 degrés. Puis, dans un second temps, remplacer les valeurs fixes par une variable nombre de côtés et par l’opération 360 / nombre de côtés.
Cette progression compte. Donner directement une version très générale du script peut imposer une charge cognitive inutile: l’élève doit comprendre simultanément les variables, la division, la boucle et le polygone. En partant d’un carré ou d’un triangle effectivement tracé, nous construisons un ancrage perceptible avant d’abstraire.
Attention au sens de rotation
Scratch permet de tourner à droite ou à gauche. Les deux choix peuvent conduire à une figure correcte, mais l’orientation finale sera inversée. Un triangle tracé avec des rotations à droite n’a pas la même position qu’un triangle tracé avec des rotations à gauche, sans que l’un soit « meilleur » que l’autre.
Le problème survient lorsque les deux sens sont mélangés dans un même script sans intention. Pour aider l’élève, nous pouvons lui faire verbaliser sa règle: « après chaque côté, je tourne toujours vers la droite de tant de degrés ». Cette phrase soutient la manipulation des blocs et rend l’algorithme plus stable.
Initialiser proprement son script de dessin
Un projet Scratch garde volontiers les traces d’un essai précédent: le lutin peut rester dans un coin de la scène, conserver une orientation inattendue, et les anciens traits demeurer affichés. Ces éléments donnent parfois l’illusion d’un problème d’angle ou de centre du costume. En géométrie, où l’on compare des formes avec précision, l’initialisation n’est pas un détail de rangement: elle fait partie de la méthode.
Au clic sur le drapeau vert, nous gagnons à retrouver les mêmes conditions de départ. Une séquence robuste comprend généralement les actions suivantes:
- effacer tout, afin que la scène ne conserve aucun segment des essais antérieurs;
- relever le stylo avant de déplacer le lutin au point initial, pour éviter un trait involontaire;
- aller à x: 0, y: 0 si l’on veut partir du centre de la scène, ou choisir d’autres coordonnées explicitement;
- s’orienter à 90 pour établir une direction de référence cohérente;
- mettre le stylo en position d’écriture seulement lorsque le lutin est placé;
- éventuellement fixer la taille ou la couleur du stylo si ces paramètres font partie de l’activité.
L’ordre a son importance. Si le stylo est déjà baissé lorsque le lutin rejoint le centre, il dessinera une diagonale de déplacement qui ne fait pas partie de la figure. L’élève peut alors chercher longtemps quel bloc de rotation a créé ce trait parasite, alors qu’il s’agit simplement d’une initialisation incomplète.
Faire du premier segment un test plutôt qu’un pari
Avant de lancer le tracé complet d’un polygone, essayons de programmer un seul segment. Le lutin se place, baisse le stylo, avance d’une longueur choisie, puis s’arrête. Nous pouvons alors observer calmement:
- le trait part-il du bon point du costume?
- suit-il bien la direction affichée par le lutin?
- la longueur paraît-elle cohérente avec le nombre de pas demandé?
- le déplacement initial a-t-il laissé une trace involontaire?
Ce test très court permet de localiser une difficulté sans superposer les effets d’une boucle et de plusieurs rotations. Il ne ralentit pas la séance; il évite au contraire que l’élève doive démêler une figure entière pour comprendre une erreur simple.
Corriger sans masquer le raisonnement
Face à un lutin qui dessine de travers, la tentation est grande de déplacer l’image du crayon « à peu près » ou d’ajouter quelques pas de compensation dans le script. Ces solutions peuvent produire une image acceptable pour une figure donnée, mais elles fragilisent tout le reste: dès que le lutin tourne ou que l’on change d’échelle, le défaut revient sous une autre forme.
La solution durable consiste à attribuer chaque réglage à sa fonction. Le costume définit le point visuel qui représente le lutin; les coordonnées déterminent sa position sur la scène; l’orientation fixe son cap; les blocs Stylo produisent le trait; la boucle et l’angle construisent la figure. Cette organisation n’est pas seulement propre: elle rend le programme lisible, modifiable et transmissible.
Pour les activités Scratch au collège, je recommande de garder un petit lutin-outil très simple — un point, une flèche fine ou un crayon dont la mine est parfaitement centrée — réservé aux tracés. C’est un matériel numérique modeste, mais il étaye puissamment la pensée: l’élève cesse de lutter contre l’apparence du lutin et peut concentrer son attention sur ce qu’il veut véritablement programmer, c’est-à-dire un déplacement, une rotation et une figure géométrique.