Logiciels libres et enseignement

Favoriser l’usage de logiciels libres et de formats ouverts

Boutons sur GeoGebra

mercredi 4 décembre 2013, par Bruno Timothée

1. Résumé

On se propose d’aborder ici la création et l’utilisation de bouton sur GeoGebra, monnayant quelques lignes de GGB/JavaScript. Ceci ouvre un très grand nombre de portes, tant chez l’élève que l’enseignant.

2. Introduction

Le logiciel libre de géométrie dynamique GeoGebra ne se présente plus, tant son succès se confirme chaque jour. Idéal afin de modéliser moult situations géométriques, analytiques, statistiques ou encore probabilistes, son interface élégante et sa simplicité d’utilisation séduisent très vite.
Nous exposons ici une fonctionnalité plus avancée, très utile lors de démonstration au tableau, notamment numérique : l’utilisation de boutons, i.e d’icônes sur la fenêtre graphique du logiciel, qui une fois pressés déclenchent certaines actions à programmer, en GGBScript ou, mieux car plus universel, en JavaScript. [1]

3. Prérequis

4. Exemple fondamental en GGBScript

Remarque : Un bouton s’insère sur la fenêtre graphique de GeoGebra de la même manière qu’un curseur, en utilisant le même menu déroulant.

L’interaction entre boutons et curseurs constitue le fondement du présent article. On donne ci-dessous un exemple élémentaire.

  • Ouvrir GeoGebra.
  • Créer un curseur a.
  • Insérer un bouton dont la légende (son nom à l’écran) est, par exemple mon bouton.

  • Cliquer droite sur ce bouton, puis propriétés. Dans l’onglet Script, sélectionner le sous onglet « par clic ».
  • Dans le petit menu déroulant, choisir Script GeoGebra.

  • Saisir alors, comme indiqué dans la capture d’écran, le code suivant.

SoitValeur[a,a+1]

  • Cliquer sur Ok puis Fermer.

Maintenant, chaque clic sur le bouton « mon bouton » incrémente la valeur du curseur a d’une unité.

5. Même exemple fondamental, en JavaScript

  • Ouvrir GeoGebra.
  • Créer un curseur a.
  • Créer un bouton dont la légende (son nom à l’écran) est, par exemple mon bouton.
  • Cliquer droite sur ce bouton, puis propriétés, et dans l’onglet Script, sélectionner le sous onglet « par clic ».
  • Dans le petit menu déroulant, choisir non pas Script GeoGebra mais JavaScript.

  • Saisir alors, comme montré ci-dessus, le code suivant.
with(ggpApplet){
var b = getValue('a');
setValue('a',b+1)
}
  • Cliquer sur Ok puis fermer la fenêtre.

À nouveau, le moindre clic sur le bouton ainsi crée augmente la valeur du curseur a d’une unité.

6. Brève analyse du code JavaScript

  • Ligne 1 : Très simplement, permet à GeoGebra de reconnaître l’ensemble des instructions JavaScript utilisées entre les accolades.
  • Ligne 2 : Crée une nouvelle variable, b, qui prend comme valeur celle du curseur a. Attention, le curseur est un objet, d’où les guillemets. Ecrire a+1 ne profite d’aucun sens : on ne peut faire de l’arithmétique avec un objet qui n’est pas un nombre. La deuxième ligne crée donc un nombre b à partir de l’objet a, aussi l’écriture b+1, cette fois-ci, apparaît sensée.
  • Ligne 3 : Fait prendre au curseur la valeur b+1, en d’autres termes incrémente le curseur a d’une unité.

7. Boutons et animations

On préférera ici la simplicité du GGBScript.

  • Créer un curseur, disons b, et configurer à loisir ses incrément et paramètres d’animation, par exemple comme ci-contre.

  • Créer un bouton, par exemple légendé « Démarrer ».
  • Dans ses propriétés, onglet Script, choisir Script GeoGebra dans le menu déroulant, puis saisir dans le champ de texte :

DémarrerAnimation[b]

  • Valider puis fermer la fenêtre.
  • Cliquer sur le bouton « Démarrer », et alors commence l’animation du curseur !

Mais alors, comment arrêter l’animation ? En cliquant droit sur le curseur, ou mieux, en créant un autre bouton ! Voici le nouveau script GeoGebra alors à saisir :

DémarrerAnimation[b,false]

8. Masquer ou non un objet

  • Créer un point A.
  • Créer un bouton, peut importe sa légende.
  • Saisir alors le code JavaScript ci-dessous.
with(ggbApplet){
setVisible('A',false);
}
  • Valider et fermer la fenêtre de code.
  • Cliquer sur le bouton.........Le point A disparaît !


Remarques
 : Remplacer false par true dans le code fait au contraire apparaître le point A.
On peut aussi jouer sur les « conditions d’affichage » de l’objet considéré, dans propriétés/avancé, demandant que ce même objet ne s’affiche qu’en fonction de la valeur d’un curseur.

9. Plus loin

Le JavaScript permet en outre de créer différents boutons sur une page HTML, contenant déjà une fenêtre graphique GeoGebra comme par exemple ici :

http://autour-de-geogebra.blogspot....

Attention, plugin Java à jour nécessaire !

10. Quelques liens utiles

Notes

[1Exactement le même esprit qu’en Visual Basic.

Recherche avancée