Les V-toys Enfants2 - Apprendre à programmer (2) - (les traces et les formes géométriques)

From OFSET Wiki

Jump to: navigation, search

Contents

[edit] Les déplacements graphiques

Dans le chapitre précédent, nous avons vu comment en rajoutant aux scripts de déplacement quelques briques supplémentaires on réglait le problème de la continuité des parcours. Dans ce chapitre nous allons voir ce qu’il faut faire pour permettent à un objet qui se déplace linéairement de laisser une trace sur l’écran, puis nous ajouterons, dans les scripts et toujours dans ce cadre, les briques de pivotement aux briques de déplacement, et de fil en aiguille, nous allons découvrir que ce procédé conduit à la création de toutes sortes de tracés giratoires dont certains sont des formes géométriques. Ceci nous amène à la question :

  • est-il possible de programmer par script V-toys des figures géométriques simples comme le carré, le polygone ou le cercle ?

Nous profiterons de cette étude pour utiliser quelques briques dont la particularité est de donner des ordres à d’autres briques ou à des scripts, ce dernier point devant être abordé avec des élèves un peu plus âgés ou plus entraînés.

[edit] Les briques laissent des traces sur l’écran

Ces briques sont signalées dans le chapitre ‘les v-toysEnfants – niveau 1 (les déplacements ), paragraphe le déplacement laisse des traces. On va rappeler ici leurs principales caractéristiques.

Elles doivent être attribuées à un objet (ici l’étoile )

[edit] La brique crayon haut/crayon bas

Elle donne à l’objet concerné la possibilité de laisser ou non une trace sur l’écran lorsque l’on appuie dans un sens ou dans l’autre sur les petites flèches vertes qui précèdent la case des options. On doit choisir entre :

  • VRAI – position crayon bas – le déplacement de l’objet laisse une trace.
  • FAUX – crayon haut –le crayon ne laisse aucune trace.

La position VRAI est donc obligatoire pour faire des tracés

[edit] La brique GOMME

Elle efface toutes les traces laissées sur l’écran par n’importe quel objet.

[edit] La brique épaisseur et couleur du trait

Elle regroupe deux fonction sur un même espace et la mise au point se fait :

  • en manipulant les petites flèches vertes placées au centre pour régler l’épaisseur du trait
  • en faisant apparaître le nuancier à partir du désignateur de valeur situé à droite pour y choisir la couleur du trait

Points importants :

Les 3 briques graphiques ci-dessus ne sont généralement pas à placer à l’intérieur des scripts quand on veut faire du graphisme de couleur. On les met à part sur l’écran, ce qui permet de changer les options en cours de route sans avoir à toucher au script. La brique Crayon haut/crayon bas peut être intégrée au script quand on fait du graphisme simple sans effet plastique.

Les traits tracés par un objet le sont directement sur le fond. Ils passent en dessous de tout ce qui est présent sur l’écran. Ces ne sont pas eux-mêmes des objets, ils n’ont pas de halo et ne sont pas déplaçables, on ne peut que les effacer avec la gomme.

Quand on a décidé d’un changement de couleur ou d’épaisseur de trait lors d’une réalisation graphique et que l’on a réglé les options, il est impératif de valider aussitôt ces briques AVANT de relancer le script de déplacement, sinon les modifications ne sont pas prises en compte.

[edit] Programmer plusieurs sortes de tracés

Si nous reprenons le projet des insectes étudié dans le paragraphe précédent, et que nous décidions de matérialiser les traces de leurs déplacements, nous voyons que la programmation en continu produit des tracés dont on peut identifier la nature :

  • la chenille qui va tout droit, rebondit sur le bord de l’écran et repasse sans arrêt sur la même marque crée une verticale.
  • la fourmi que l’on a réorientée avec la poignée bleu foncé de son halo, part en biais et trace des obliques et des lignes brisées.
  • Par contre la coccinelle à qui on a rajouté une brique de pivotement, tourne en rond en avançant de 5 pixels à chaque fois et trace un cercle qu’elle parcourt inlassablement

[edit] La coccinelle avance et tourne de façon continue

Dans ce chapitre on va donc étudier la programmation par script du déplacement continu regroupant les briques ‘Avance’ et les briques de pivotement et nous allons découvrir que ces scripts vont générer des formes dont certaines appartiennent à l’univers de la Géométrie et qui se dessinent en utilisant d’autres procédés et d’autres outils que la règle, l’équerre ou le compas, mais qui se révèlent tout aussi efficaces et précis .

  • Nous allons voir que dans cette programmation, les nombres tapés dans les tuiles chiffrées qui accompagnent l’une et l’autre des briques du script, jouent un rôle très important.
  • Tout ne peut pas être fait à n’importe quel moment et à n’importe quel âge, et il appartient à chaque maître, chaque animateur, ou à un spécialiste de savoir quand il devient possible d’aborder tel ou tel point avec ses élèves.
  • Il y a des exercices qui demandent que soient connus les nombres de 2 et 3 chiffres ainsi que leur progression et leur échelle de valeur (100 c’est plus que 10)
  • D’autres exigent des enfants qu’ils aient abordé le problème des opérations fondamentales.

Dans le premier cas, des expériences peuvent être tentées très tôt en tapant différents nombres dans les tuiles chiffrées associées aux briques et en observant les résultats obtenus lorsque les scripts sont activés. On en tire des conclusions.

Suivant le cas, les enfants sont capables :

  • de décrire et de qualifier,
  • de retenir ce qui est caractéristique de telle ou telle forme (ou de le noter pour le reproduire).
  • de comprendre et d’expliquer la relation entre le chiffre et la forme.

[edit] Un seul nombre pour les 2 briques du script de la coccinelle, ou la féerie numérique

La coccinelle dont les 2 briques de déplacement sont reliées à un seul nombre produit des tracés qui se referment sur eux-mêmes. Pour découvrir quels types de formes on obtient à l’aide de ce procédé, on va changer plusieurs fois le nombre de la tuile chiffrée. Chacun regarde ce qui se passe.

[edit] Avancer de 1 pixel et tourner de 1degré

Nous voyons que la coccinelle entreprend avec une très grande lenteur le dessin d’un cercle. Faire progresser le nombre jusqu’aux alentours de 20 n’agrandit pas le cercle car les distances parcourues sont infimes, cela augmente seulement la vitesse du déplacement de la coccinelle. Au de là de 20 la ligne du cercle commence à se gondoler et à se hérisser de pointes.

[edit] avancer et tourner avec un nombre supérieur à 20

La longueur du déplacement commence à influer sur le tracé, et l’on voit apparaître des polygones dont le nombre de côtés va décroître progressivement, alternés avec des rosaces dont la couronne s’épanouit de plus en plus au fur et à mesure qu’augmente la longueur du déplacement puis on passe par les formes géométriques comme le carré ou le triangle équilatéral.

Au dessus de 100,la longueur du déplacement entraîne de plus en plus la création de formes qui passent de la rosace à l’étoile avec des bras de plus en plus longs et un cœur central de plus en plus réduit. A noter la formule 180 qui fait se retourner la coccinelle sur elle-même et repartir en sens inverse

[edit] expérimenter avec toutes sortes de nombres et la couleur

Avec des nombres de plus en plus élevés on obtient des configurations de plus en plus chargées en traits et que l’on peut interrompre à n’importe quel stade de leur développement pour varier les effets (la rosace bleue, la rosace verte). Certaines figures vont sortir à l’extérieur de l’écran mais créent cependant des jeux de fond intéressants.

Et pourquoi ne pas s’amuser en faisant jouer la couleur des traits et la couleur du fond ?

  • En ayant recours à la brique ‘changer la couleur du trait
  • en appelant le menu rouge de l’écran Monde pour changer la couleur du fond (choisir ‘ STYLE de REMPLISSAGE – CHANGER LA COULEUR ).

NB : Ne pas avoir peur de vider l’écran avec la gomme quand on n’est pas satisfait de ses tracés et de recommencer, mais il faut bien noter le nombre qui crée une figure particulière pour pouvoir le réutiliser.

Le projet cocciRosace pour les plus jeunes

[edit] 2 nombres différents, pour maîtriser la forme et la dimension des figures

Un seul nombre pour 2 briques produit une infinité de formes mais qu’il n’est pas possible, avec ce seul procédé de changer d’échelle à volonté. Il faut maintenant trouver le moyen d’obtenir des tailles différentes pour une même figure. Dissocier le nombre du déplacement de celui du pivotement va permettre d’arriver à ce résultat. Nous allons donc nous servir de 2 tuiles chiffrées, une pour l’avancée et une autre pour le pivotement.

  • Avec des nombres inférieurs à 20, la coccinelle construit des formes circulaires de toutes les tailles

Faire des essai avec plusieurs nombres différents pour découvrir par soi-même ceux qui vont augmenter ou diminuer la taille des cercles.

Des simulations physiques (je pivote d’un pas , de 2 ou de 5 , j’avance un petit peu, puis je pivote de nouveau etc.) peuvent amener à la compréhension intellectuelle du phénomène.

Mais on peux ne pas s’en tenir à ce seul constat et en manipulant les 2 séries de chiffres on va faire varier les courbures et créer des enroulements et, pourquoi pas, faire des contre-courbes avec des chiffres précédés du signe moins . S’il ne sait pas ce que sont les chiffres négatifs, un enfant peut en comprendre le principe en se référant à des situations de la vie courante. Même à 8 ans on a entendu parler de températures négatives..

NB. Pour faciliter les changements de courbures ou de couleurs, stopper le script avec l’horloge rose, changer les paramètres chiffrés ou la couleur (en n’oubliant pas d’activer la brique couleur à chaque fois), puis le relancer.

Le projet cocciRosace2 pour les 8 – 10 ans

[edit] la coccinelle se déplace avec des nombres plus élevés

Quand le nombre de la brique ‘TOURNE’ passe par certaines valeurs numériques, on a vu, dans le paragraphe ‘avancer et tourner avec des nombres supérieurs à 20’ qu’il se formait quelques unes des figures de la géométrie classique comme les différents polygones, le carré et le triangle. En notant les numéros de ces pivotements privilégiés (45, 60, 90, 120 par exemple) on va reproduire ces figures à volonté.

  • Quelle que soit les dimensions de ces figures, la valeur de leur angle de pivotement est constant.

Donc il faut observer ce qui se passe quand on fait varier la longueur du déplacement, et l'on voit en effet que c’est le nombre inscrit en face des déplacements qui fait varier la taille de ces figures

NB : la coccinelle tournant en continu, quand on arrête le script elle est placée n’importe où et orientée n’importe comment, aussi est-il bon, suivant ce que l’on veut faire, de la réorienter avec une brique d’orientation indépendante posée à côté sur l’écran et que l’on active au coup par coup.

[edit] Le script s’arrête quand la surface est finie de construire

Les scripts étudiés jusqu’ici tournent en continu et ne sont stoppés que quand on les désactive avec l’horloge rose. Comment faire pour qu’ils s’arrêtent quand la forme est terminée ? Nous allons chercher des solutions en programmant un triangle. Il y en a plusieurs .

[edit] Première solution - rassembler toutes les briques

Chercher une solution est un plaisir et l’on peut espérer qu’un ou plusieurs enfants vont suggérer de mettre dans le script autant de briques de déplacement et de pivotement qu’il y a de côtés et d’angles au triangle. Dans ce cas précis, la coccinelle trace son triangle et s’arrête quand elle a épuisé la liste des briques de son script. Mais tant que son horloge bleue est active elle reste en position pour en dessiner d’autres. Il suffit de la prendre avec la souris et de la déposer ailleurs pour qu’elle trace autant de triangles que l’on le désire.

[edit] Deuxième solution - la brique Action

il y a, dans la catégorie SCRIPTS – COMMANDES et TESTS une petite brique avec un gros point d’exclamation que l’on pourrait appeler la brique ACTION. Elle joue le même rôle que la brique à horloge bleue. Elle démarre le script qui contient toutes les commnades et elle n’en exécute qu’une seule fois le contenu. Entre temps elle reste inerte et il faut la réactiver chaque fois que l’on désire tracer un nouveau triangle .

[edit] Troisième solution - la brique REPETE

A part la solution précédente, la coccinelle qui tourne en continu obéit sans interruption aux deux seules briques contenues dans le script. Il y a donc répétition inlassable de 2 ordres : AVANCE …X - TOURNE… X ou Y.

  • Utiliser la brique REPETE signifie que l’on va dire au script combien de fois il doit exécuter ce qui est contenu dans son récipient.

Plus économe en matériel de programmation, plus savante aussi cette solution est surtout basée sur une mise en relations entre le désignateur gris de la brique REPETE et le script. Le désignateur de valeur bleu doit être mis en relation avec une tuile chiffrée qui indique le nombre des répétitions choisi. Elle est à proposer à des élèves plus âgés, un peu plus rompus au maniement des briques et des scripts car il faut en comprendre le principe et en mémoriser le fonctionnement interne. Le démarrage se fait en activant le point d’exclamation de la brique ‘REPETE’

[edit] Le calcul des angles des polygones pour ceux qui commencent à utiliser les 4 opérations du calcul arithmétique

Au démarrage, notre élève n’est pas obligé de savoir que la somme des angles d’un polygone est égale à 360°, mais il peut le découvrir en faisant la somme de tous les angles de pivotement des surfaces géométriques qu il a construites en s’amusant. Quand il s’aperçoit que ce total est toujours le même quel que soit le nombre de côtés du polygone,il peut trouver (ou on peut l’amener à trouver)

  • que tous les angles de ces polygone sont égaux.
  • que la division de 380 par le nombre de côtés qu’il veut pour son polygone lui donne automatiquement la valeur numérique de l’angle de pivotement de son script.
  • Pour cela il doit faire une division , peut-être avec un crayon et du papier, ou bien en utilisant les outils de l’ordinateur qu’il va trouver dans le tiroir des CHIFFRES.

Il sort une brique DIVISER et 3 tuiles chiffrées. La brique est composée de 3 désignateurs gris, plus les signes DIVISER et EGAL:

  • le premier désignateur (à gauche) est mis en relation avec le nombre 360 placé dans une tuile chiffrée.
  • le deuxième, au centre, après le signe de la division, est mis en relation avec une nouvelle tuile qui accueille le nombre de côtés désiré pour le polygone (4 pour le carré, 3 pour le triangle, x pour un autre polygone).
  • le troisième à droite, après le signe égal, est mis en relation ave la tuile qui accueillera le résultat de l’opération quand on activera le point d’exclamation.

A ce moment-là, le résultat s’inscrit à la fois dans le troisième désignateur et dans sa tuile chiffrée . Il obtient 90 pour le carré (360/4), 120 pour le triangle (360/3) etc. Muni de ces informations il ne lui reste plus qu‘à construire son script en inscrivant :

  • dans la tuile chiffrée de la brique de pivotement le nombre fourni par la brique de division (36) qui correspond à la valeur de l’angle du polygone
  • dans la tuile chiffrée de la brique de déplacement, la dimension qu’il veut donner à son polygone (50, mais cela pourrait être 20 ou 100).

Il ne reste plus quà programmer en utilisant la formule de programmation qui lui convient le mieux à chacun .

[edit] Comprendre comment la coccinelle dessine le cercle

Les premiers essais ont été expérimentaux et il était difficile de comprendre pourquoi les manœuvres décrites étaient faites de cette manière. On peut maintenant essayer de les expliquer de façon aussi concrète que cela sera possible.

Normalement, pour les enfants, un cercle ça se dessine en traçant une circonférence avec un compas dont l’extrémité d’une des branches est piquée sur un centre et dont l’autre l’extrémité, porteuse d’un outil de traçage, pivote autour de ce centre en décrivant une courbe fermée. C’est l’écartement constant à l’extrémité des 2 branches du compas (ou rayon) qui détermine la taille du cercle, et la circonférence est le résultat de l’opération.

Quand la coccinelle traceuse de Squeak veut dessiner un cercle, cela ne se passe pas du tout comme cela. L’expérimentation sur l’écran montre que, sans se soucier le moins du monde d’un centre ou d’un rayon, quand elle avance d’ une toute petite longueur, toujours la même, et tourne un tout petit peu, toujours de la même façon, cela amène la ciccinelle à retrouver son point de départ en formant une belle forme qui a les apparences d’un cercle. On va donc pouvoir dire qu’elle trace un polygone aux multiples côtés. Mais comment trouver combien il y en a ? C’est l’observation du rapporteur qui va donner la solution. Une de ses demi-circonférences est divisée en millimètres,et en mesure 180.(il y en a plusieurs et elle sont divisées aussi en 180 parties), ce qui donne 360 mm pour une circonférence complète. La coccinelle peut donc construire un polygone qui a 360 côtés si elle se déplace chaque fois d’un millimètre. Et pour tout arranger, le tour complet des pivotements a été divisé en 360 parties également que l’on appelle des degrés! Ce qui fait que la faire avancer 360 fois de 1 millimètre et pivoter chaque fois de 1 degré va permettre de faire un tour complet et un beau cercle.

Mais les millimètres du rapporteur sont énormes comparés à l’unité de mesure de l’écran qui est un pixel et il en est de même pour les unités de pivotement qui vont avec, aussi va-t-on faire confiance aux nombres de Squeak pour nous présenter des unités coordonnées, et calculer , comme on l’a fait plus haut, que faire varier, dans un script, les deux nombres qui gouvernent les valeurs des briques de déplacement et de pivotement va permettre :

  • d’agrandir le cercle en augmentant la longueur des unités de déplacement (la forme s’ouvre)
  • de diminuer le cercle en augmentant la valeur chiffrée des unités de pivotement (la forme se referme)

En tout cas, de réfléchir aux raisons qui provoquent les résultats que l’on voit arriver.

Tout cela explique aussi pourquoi diviser 360 par le nombre de côtés d’un polygone va nous donner les degrés de son angle de pivotement .

[edit] Travaux pratiques pour les élèves les plus exercés

  • Faire quelques exercices graphiques pratiques pour essayer de changer la taille des figures géométriques
  • Expérimenter l’intérêt de la brique REPETE.
  • Chercher des solutions pour réaliser un rectangle - un escalier – une étoile etc.. en assemblant dans le script des unités de déplacement pouvant comprendre plusieurs avancées et pivotements, et que la brique Repete reproduira un certain nombre de fois

le projet coccinelles

[edit] Conclusion

Les exercices présentés dans ce chapitre concernent des enfants de plusieurs niveaux et doivent être abordés progressivement. Bien entendu, il est nécessaire, autant que faire se peut, de leur laisser le soin de chercher leurs propres solutions et d’apprécier au cas par cas l’aide que l’on peut leur apporter. Une chose est certaine, l’expérimentation est indispensable, car elle permet de comprendre la théorie en passant par la pratique, et la part du raisonnement est aussi importante que celle de l’exécution des manœuvres. Jusqu’ici, nous avons traité d’objets se déplaçant individuellement sur l’écran, même s’ils peuvent être plusieurs en activité en même temps. Dans le chapitre suivant il sera question d’objets dont les parcours se croisent et nous verrons comment programmer les résultats de ces rencontres.

Le projet V-toys dans son intégralité

le projet allégé pour un usage plus restreint

[edit] Chapitre suivant:

Suite de la programmation par script.

Retour au sommaire

Personal tools