Difference between revisions of "Scripting"

From GeoGebra Manual
Jump to: navigation, search
Line 10: Line 10:
 
{{Example|1=<div>
 
{{Example|1=<div>
 
* ''a'' is an integer-valued [[Slider Tool|slider]] ranging from 1 to 3
 
* ''a'' is an integer-valued [[Slider Tool|slider]] ranging from 1 to 3
* <code><nowiki>list1={"red","green","blue"}</nowiki></code>
+
* <code><nowiki>list1={"red", "green", "blue"}</nowiki></code>
* in properties of a set On Update script to <code>SetColor[a,Element[list1,a]]</code>
+
* in properties of ''a'', set "On Update" script to <code>SetColor[a,Element[list1,a]]</code>
 
* by moving the slider you change its color</div>}}
 
* by moving the slider you change its color</div>}}
  

Revision as of 13:21, 1 June 2011


GeoGebra supports two scripting languages -- GGBScript and Javascript. Script is a sequence of actions which can be triggered by :

  • clicking or updating particular object
  • loading the file (in case of Javascript)
  • Javascript listeners (see Reference:JavaScript)

You can set this script via Scripting panel of Properties Dialog.

GGBScript

You can create scripts consisting of GeoGebra commands.

Example:
  • a is an integer-valued slider ranging from 1 to 3
  • list1={"red", "green", "blue"}
  • in properties of a, set "On Update" script to SetColor[a,Element[list1,a]]
  • by moving the slider you change its color


JavaScript

JavaScript is a programming language used by many Internet technologies. Unlike GeoGebra Script, in Javascript the commands don't have to be executed as a simple sequence, but a control flow (if, while, for) can be used. For generic JavaScript you can find a nice tutorial on developer.mozilla.org. In GeoGebra, you can use special JavaScript commands which allow you to change the construction.

Example:


Complete list of available commands can be found in Reference:JavaScript. GeoGebra contains its own JavaScript engine. When exported as Dynamic Worksheet one can choose whether to use this engine or the one contained in browser applets.

Comments

© 2024 International GeoGebra Institute