0 - Einleitung - Skripting
In einem GeoGebra-Applet kann man über die ⚙️Einstellungen eines Objektes (rechte Maustaste) den Tab für das Skripting aufrufen:
Skripte sind eine Abfolge von Befehlen, die nacheinander ausgeführt werden. GeoGebra bietet zwei Skriptsprachen um Befehle anzugegeben:
GeoGebra Skript und JavaScript .
(entnommen aus: https://wiki.geogebra.org/de/Skripting)
Die Ausführung eines Skriptes (siehe Bild oben) kann ausgelöst werden durch:
- "Bei Mausklick" (GeoGebra Skript oder JavaScript): Klicken auf ein bestimmtes Objekt
- "Bei Update" (GeoGebra Skript oder JavaScript): Aktualisierung (Wert-Veränderung, Neudefinition) eines bestimmten Objektes
- "Globales JavaScript" (nur JavaScript): Laden der Datei (function ggbOnInit() { ... })
- (nicht in diesem Workshop behandelt: Javascript Listeners - z.B. Benutzeraktionen überwachen)
if
, while
und for)
verwendet werden.
JavaScript ist zwar in Englisch - findet man jedoch einen GeoGebra-Befehl auf Deutsch, kann man am Seitenende der GeogebraWiki-Seite schnell auf Englisch umstellen, um diesen Befehl ggf. in JavaScript benutzen zu können:
JavaScript erlaubt das Benutzen aller in GeoGebra Skript hinterlegten Befehle.
Zusätzlich kann man über JavaScript seine Ausgabe eleganter gestalten.
Nicht nur eine Ausgabe, auch die Programmstruktur ist übersichtlicher als in GeoGebra Skript.
So kann man z.B. Funktionen mit Anweisungen erstellen, die in einem Skript von verschiedensten Objekten aufgerufen werden können. Das erspart erheblich Arbeit, vor allem wenn man immer mal wieder etwas ändern muss.
Abschließend kann man zusammenfassen:
Das Skripting mit JavaScript ist aufgrund der Kontrollstrukturen sehr vielseitig einsetzbar. Allerdings lassen sich viele Aufgaben mit dem einfacheren GeoGebraSkript bewältigen.
Bei der Ausführung eines Skriptes (z.B. Klicken einer Schaltfläche) muss man sich vorher entscheiden, welches Skript man verwendet - in einem Applet jedoch kann man bei Bedarf eine Schaltfläche mit GeoGebra Skript und eine andere Schaltfläche mit JavaScript ein Skript ausführen lassen., was folgendes Applet zeigt: