Scripting

Uit GeoGebra Manual
Versie door Ccambre (overleg | bijdragen) op 15 mei 2015 om 14:29
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Ga naar: navigatie, zoeken

Sjabloon:Manual Page


Een script is is een reeks van commando's die achtereenvolgens worden uitgevoerd. GeoGebra ondersteunt twee scripting-talen - GGBScript en Javascript. De uitvoering van een scrip kan je starten door :

  • te klikken op een object object
  • een object te updaten (wanneer waarden of eigenschappen van het object gewijzigd worden)
  • een bestand in te laden (bij JavaScript)
  • Voor meer informatie over Javascript zie Javascript

Je kunt een script maken in de tab Scripting van het Eigenschappenvenster.

GGBScript

Je kunt een scrip maken met GeoGebra commando's. Bij het opstarten van het script worden alle commando's een na een uitgevoerd.

Voorbeeld:
  • a is Schuifknop met gehele waarden van 1 tot 3
  • lijst1 = {"rood", "groen", "blauw"}
  • in de eigenschappen van a, kan je in een script de kleur bepalen "On Update" als SetColor[a, Element[list1, a]]
  • wanneer je waarde van de schuifknop wijzigt, wijzigt ook zijn kleur

Uitleg: Elke keer wanneer je de schuifknop beweegt wordt beschouwd als een Update. Daarom zal bij elke wijziging in de schuifknop het script aangesproken worden om de kleur te wijzigen. Er zijn commando's die enkel in scripting kunnen gebruikt worden. Je vind ze op de pagina Scripting_Commando's.

JavaScript

JavaScript is een programmeertaal die veel gebruikt wordt op het internet. Je vindt meerdereinstructiehandleidingen over Java op het internet. In GeoGebra, kan je JavaScript methodes gebruiken om je constructie aan te passen. Deze methodes horen tot een ggbApplet object, zodat je het kunt aanspreken met ggbApplet.method_name(parameter,..,parameter). Voor een complete lijst van deze methodes, zie Javascript.

Voorbeeld:
for(var i =0;i<10;i++) 
   ggbApplet.evalCommand("A_"+i+"=(random()*10,random()*10)");
Dit script creëert 10 punten, van A0 tot A9 met willekeurige coördinaten.


Global JavaScript

In the Global JavaScript part of Scripting tab in Properties Dialog you may define functions (not variables) which will be available from the other scripts. You can also define function ggbOnInit(), which is called automatically once the construction is loaded. The ggbOnInit function can be used for registering some listeners, as shown below.

Voorbeeld:
function onAdd(name){
    alert("Object "+name+" was added.");
}

function ggbOnInit(){
    ggbApplet.registerAddListener("onAdd");
}
First we defined function onAdd that given a string shows a message depending on that string. After that, using the ggbOnInit function, we told GeoGebra to call this function whenever a new object is added. Once we reload our construction, function ggbOnInit will be called and since then, when user adds a point named e.g. A, message "Object A was added" will appear.

You can also use listeners for actions like rename, delete and clear construction. Complete list is available in Reference:JavaScript.

Nota: Using any ggbApplet methods in Global JavaScript outside of ggbOnInit will not work as intended since they will be called before the construction is loaded.
© 2024 International GeoGebra Institute