La ligne verte
1-Le problème
La "ligne verte" est tracée en suivant certains côtés des deux carrés construits à partir des points A, B et M (variable).
Il s'agit de "calculer" (avec Blockly) la longueur de cette ligne verte en fonction de a, et sans l'utilisation de la valeur absolue, que les élèves ne connaissent pas à priori.
Bien évidemment on se servira alors d'un bloc conditionnel, du type : si ... alors ... sinon.
On terminera en représentant graphiquement cette fonction dans le repère (O,I,J) ; indication : utiliser la macro : report de mesure algébrique.

Ci-dessus : une simple image.
On travaillera sur cette figure
2- La construction de la figure complète.
2-1 Première méthode
La construction de la ligne a déjà été abordée précédemment. Remarque : pour la construction du quatrième sommet du carré, la macro "translation" peut se révéler bien utile.
Variante destinée aux enseignants : chaque point est en fait identifié à un nombre complexe. D'où, après ouverture de la calculatrice en mode création, la possibilité d'entrer les syntaxes suivantes :
A+4 ; C+(M-A)*i ; B-(M-B)*i
2-2 Seconde méthode (corrigée) : en mode tortue
Voici le cheminement de la tortue :
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger la vidéo.
Fondamental : Notion rapide de variable (informatique)
Au cours du cheminement de la tortue, il a fallu garder en mémoire une position particulière de la tortue ; d'où l'utilisation d'une zone de la mémoire étiquetée "mon point" (on parle de déclaration de variable) et dont le contenu sera la position de la tortue, en fait le tableau de ses coordonnées (on parle d'affectation de variable). Il est alors possible récupérer le contenu de cette variable plus loin dans le script.

3- Compléments techniques.
On trouvera ici les explications pour continuer la construction de la figure :
la transformation de la ligne en boîte noire
l'ajout d'un repère flottant et de la macro "report de mesure algébrique"
l'affichage de la réponse attendue (en cachant son mode de calcul)
3-1 Boîte noire : méthode de la macro.
Méthode :
Pour transformer une partie de figure en boîte noire, il suffit d'utiliser une macro : les objets intermédiaires seront automatiquement super-cachés.
Note : dans le cas d'un objet initial qui est un "point sur" (comme le point M de notre figure), on montre d'abord le point puis le segment (ou la droite, ou le cercle).
3-2 Boîte noire pour une trace de tortue
Méthode :
Si on désire proposer à ses élèves un chemin de tortue en boîte noire, on peut utiliser la méthode proposée dans la vidéo ci-dessous. Explication résumée :
on crée un clone du point auquel est attaché le script
le script initial est copié dans le DG_blocks du clone, puis supprimé du DG_blocks du point original.
le clone est super-caché
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger la vidéo.
3-3 Les autres éléments
Méthode : a- Ajout d'un repère
Avec DGPad, il est possible de ... coller une figure à l'intérieur d'une autre !
Avec l'appli locale du Mac ou l'appli locale Linux, il suffit tout simplement d'effectuer un édition -> copier la figure suivi d'un édition -> coller la figure
Si on ne dispose que de la webApp, il suffit d'ouvrir chacune des deux figures en mode texte, puis de copier le texte de l'un à l'intérieur du texte de l'autre (sauf les deux lignes " // CoordinatesSystem) en respectant les rubriques.
Remarque :
Il est intéressant de se garder, bien à l'abri quelque part, quelques figures clés contenant des éléments à réutiliser éventuellement ailleurs (macros, repères ...)
On trouvera ici deux figures téléchargeables contenant des repères (O,I,J) "flottants", l'un avec OI = 1, l'autre avec le point I libre ; le tout accompagné de la macro "report de mesure algébrique"
Méthode : b- Super-cacher rapidement
Super-cacher un ou plusieurs éléments se fait grâce à des "expressions-programmes"
- soit en mode tortue depuis une expression, comme expliqué ici
- soit plus rapidement en entrant dans la calculatrice ce type de syntaxe :
A.setHidden(2);E1.setHidden(2);"prog"
Remarque :
Ce type de syntaxe est propre à la POO (programmation orientée objet).
Dans le cas présent elle signifie qu'aux deux objets A et E1 on a appliqué la méthode setHidden avec le paramètre 2.
Le rôle du dernier point-virgule est de permettre la communication avec la figure (par l'intermédiaire de "prog"). Si on veut que rien ne s'affiche dans la figure, il suffit de remplacer "prog" par ... "" , une chaîne de caractère vide.
Méthode : c- Le texte avec la valeur de la réponse attendue
Supposons que l'expression réponse s'appelle b.
On crée alors un point (ensuite éventuellement super-caché), et on demande à la tortue d'écrire depuis ce point !
L'expression b est à super-cacher également.

Remarque :
note 1 : quand on utilise des parenthèses, rien n'apparaît à l'écran tant que la seconde parenthèse n'est pas installée (bug ?)
note 2 : avec le "écrire" ci-dessus, on trouve un exemple de "concaténation" en javascript. Les variables javascript peuvent contenir (entre autres) du texte (on parle de variables alphanumériques), des nombres (variables numériques).