Les figures restreintes

Une fois sa figure terminée, le concepteur peut souhaiter en limiter certaines fonctionnalités. En particulier il lui sera facile :

  • de rendre certains éléments « super-cachés », même en laissant le mode construction accessible.

  • de rendre définitivement des objets inertes, c'est à dire inaccessibles à la souris (ou au doigt sur tablette) ; par conséquent visibles, mais ... muets !

  • de bloquer le zoom, cacher la tableau de bord, empêcher le déplacement des expressions, etc ; indispensable lorsqu'on distribue ses figures à des élèves afin qu'ils puissent se concentrer sur ce pourquoi ils sont là : faire des mathématiques ... et non fouiller partout, ni tout mettre sens dessus-dessous.

Remarque

Ces restrictions sont très simples à mettre en place. Une fois effectuées elles concernent autant la figure que l'éventuelle applet correspondante.

1- Rendre des objets inertes

Voici quelques méthodes possibles. Elles s'utilisent de préférence avec la version locale de DGPad : c'est même obligatoire pour le copier-coller de figures.

Un conseil : dès qu'il s'agit de restreindre il vaut mieux travailler sur une copie du fichier. Il est parfois compliqué (voire très difficile) de revenir en arrière !

1-1 Avec une expression-programme

Pour rendre inertes des points, droites, segments, etc, il suffit de créer une expression (a pour notre exemple) ; expression travaillée ensuite en Blockly.

Cette expression est ensuite « super-cachée » (voir plus bas).

1-2 En mode tortue
  • Autre possibilité : créer un point (A dans notre exemple), et créer le DG-Blocks A pour construire une figure. Le point A est ensuite super-caché (voir ci-dessous). Le DG-Blocks devient inaccessible ... ainsi que la construction ! Les chemins de tortue sont inertes par défaut.

  • En mode tortue on peut également rendre inerte un résultat de calcul : le détail du calcul devient alors inaccessible. Exemple ci-dessous :

    1. un triangle équilatéral dynamique a pour côté a. L'élève doit (avec la calculatrice ou en Blockly) calculer son aire.

    2. pour que soit affichée la réponse attendue, il suffit de créer une expression Aire qui donne le bon calcul, puis un point flottant P4 qui permet à la tortue d'écrire le texte adéquat (voir ci-dessous)

    3. on termine en « super-cachant » l'expression Aire ainsi que le point P4

Remarque

Le calcul de l'aire peut se faire directement dans le DG-Blocks : P4, et non à part.

2- Super-cacher des objets

Deux méthodes sont ici proposées

2-1 Avec une expression-programme

Super-cacher des objets peut se faire par l'intermédiaire d'expressions-programmes (en Blockly).

Explications :

La figure ci-dessus contient le segment S1 d'extrémités A et B. Le bloc cacher a trois paramètres :

  • 0 pour visible

  • 1 pour simplement caché (l'outil gomme permet quand même d'y accéder)

  • 2 pour super-caché (l'objet devient complètement inaccessible, même avec la gomme)

2-2 En copiant-collant une figure ressource

Comment faire :

  • télécharger cette figure ressource (ci-dessous), puis l'ouvrir avec l'appli locale DGPad

  • Copier la figure puis ouvrir la figure à restreindre

  • Figure dans laquelle on Colle la figure

Conseil

Il vaut mieux travailler sur une copie de figure et garder la figure initiale : le retour en arrière peut être difficile.

3- Bloquer le zoom, le déplacement etc.

La méthode toute simple du Copier la figure pour ensuite Coller la figure sert également pour apporter des restrictions à une figure (comme empêcher le zoom, ne pas afficher le panneau de contrôle, etc). Voici la figure ressource :

Les fonctions de restrictions parlent presque toutes d'elles-mêmes. Quelques précisions pour certaines d'entre-elles :

  • cancel_resize_event avec bool :vrai signifie que la taille de la figure sera limitée à celle choisie lors de l'enregistrement.

  • setMode avec vrai value 0 signifie : forcer le mode 0, c'est à dire ne pas créer de points (mode consultation) et faire tourner le repère 3D éventuel avec un seul doigt. C'est le complément obligatoire de hide_ctrl_panel avec bool : vrai (vérifier qu'on est bien en mode consultation avant d'enregistrer)