Scripting
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.
- 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.
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.
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.