Diferencia entre revisiones de «Programas - Guiones (Scripting)»

De GeoGebra Manual
Saltar a: navegación, buscar
Línea 16: Línea 16:
 
==JavaScript==
 
==JavaScript==
 
JavaScript es un lenguaje de programación empleado en diversas plataformas de tecnología de Internet. A diferencia del Script de GeoGebra, los comandos en Javascript no requieren una ejecución secuencial dado que es posible controlar su desenvolvimiento (con condiciones fijadas por cada <code>si/if</code>, <code>mientras/while</code>, <code>para/for</code>). Un interesante tutorial genérico sobre JavaScript aparece en ingles en [https://developer.mozilla.org/en/JavaScript/Guide developer.mozilla.org]. En GeoGebra, pueden emplearse  comandos especiales de JavaScript que permiten cambiar cualquier construcción. Estos métodos corresponden al objeto  ggbApplet, lo que implica que se los puede convocar como <code>ggbApplet.nombre_del_método(parámetro, .. , parámetro)</code>.  
 
JavaScript es un lenguaje de programación empleado en diversas plataformas de tecnología de Internet. A diferencia del Script de GeoGebra, los comandos en Javascript no requieren una ejecución secuencial dado que es posible controlar su desenvolvimiento (con condiciones fijadas por cada <code>si/if</code>, <code>mientras/while</code>, <code>para/for</code>). Un interesante tutorial genérico sobre JavaScript aparece en ingles en [https://developer.mozilla.org/en/JavaScript/Guide developer.mozilla.org]. En GeoGebra, pueden emplearse  comandos especiales de JavaScript que permiten cambiar cualquier construcción. Estos métodos corresponden al objeto  ggbApplet, lo que implica que se los puede convocar como <code>ggbApplet.nombre_del_método(parámetro, .. , parámetro)</code>.  
Una  lista completa de los comandos disponibles puede encontrarse en  [http://wiki.geogebra.org/en/Reference:JavaScript]Referencia:JavaScript.  
+
Una  lista completa de los comandos disponibles puede encontrarse en  [http://wiki.geogebra.org/en/Reference:JavaScript] ''Referencia: JavaScript''.  
  
 
{{Example|1=
 
{{Example|1=
Línea 51: Línea 51:
 
En primer lugar se define la función ''onAdd'' que en tanto se le pase una cadena de texto, expone un mensaje dependiente de la cadena. Luego, usando la función ''ggbOnInit'', se le puede indicar a GeoGebra que convoque a este función cuando se añade un nuevo objeto. Una vez que se ha recuperado la construcción, la función ggbOnInit será convocada y a partir de ese momento, cuando se fuese a añadir un punto llamado, por ejemplo,  ''A'', aparecerá el mensaje "Objeto A añadido".}}
 
En primer lugar se define la función ''onAdd'' que en tanto se le pase una cadena de texto, expone un mensaje dependiente de la cadena. Luego, usando la función ''ggbOnInit'', se le puede indicar a GeoGebra que convoque a este función cuando se añade un nuevo objeto. Una vez que se ha recuperado la construcción, la función ggbOnInit será convocada y a partir de ese momento, cuando se fuese a añadir un punto llamado, por ejemplo,  ''A'', aparecerá el mensaje "Objeto A añadido".}}
  
También pueden emplearse espectadores para acciones del orden de renombrar, eliminar y borrar una construcción. La lista completa está disponible en [[:en:''Reference:JavaScript'']].
+
También pueden emplearse espectadores para acciones del orden de renombrar, eliminar y borrar una construcción. La lista completa está disponible en [:en:''Reference:JavaScript'']
 
{{Note| Al emplear un método ggbApplet cualquiera en Global JavaScript fuera de ggbOnInit, no operará como se pretende dado que será convocado antes de recuperar la construcción.}}
 
{{Note| Al emplear un método ggbApplet cualquiera en Global JavaScript fuera de ggbOnInit, no operará como se pretende dado que será convocado antes de recuperar la construcción.}}
  
 
=== Captación (Logging) USB ===
 
=== Captación (Logging) USB ===
 
Para captar datos de un USB se puede definir un espectador de captación {{description}}
 
Para captar datos de un USB se puede definir un espectador de captación {{description}}

Revisión del 22:55 24 jul 2011


GeoGebra respalda sendos lenguajes de programación de guiones (scripting) -- GGBScript y Javascript. Un "script" es un guión de una secuencia de acciones que puede desencadenarse con:

  • un clic o actualización de un objeto particular
  • la apertura de un archivo (en caso de Javascript)
  • vías pertinentes tendientes a Javascript (ver [1] _ Referencia:JavaScript)

Se puede fijar una vía a los guiones señalados a través de la pestaña correspondiente de la Caja de Diálogo de Propiedades de un objeto.

GGBScript

Pueden crearse guiones consistentes en una secuencia de comandos de GeoGebra.

Ejemplo:
  • a es un entero cuyo valor lo establece un deslizador con un rango de 1 a 3 con un Incremento de 1.
  • Lista_1={"rojo","verde","azul"}
  • en la pestaña Programa de Guión - Secripting de Propiedades de a, se establece en "Al Actualizar" Color[a, Elemento[Lista_1, a]] y se selecciona "Guión (Script) GeoGebra"
  • al desplazar el deslizador, se modifica su color

JavaScript

JavaScript es un lenguaje de programación empleado en diversas plataformas de tecnología de Internet. A diferencia del Script de GeoGebra, los comandos en Javascript no requieren una ejecución secuencial dado que es posible controlar su desenvolvimiento (con condiciones fijadas por cada si/if, mientras/while, para/for). Un interesante tutorial genérico sobre JavaScript aparece en ingles en developer.mozilla.org. En GeoGebra, pueden emplearse comandos especiales de JavaScript que permiten cambiar cualquier construcción. Estos métodos corresponden al objeto ggbApplet, lo que implica que se los puede convocar como ggbApplet.nombre_del_método(parámetro, .. , parámetro). Una lista completa de los comandos disponibles puede encontrarse en [2] Referencia: JavaScript.

Ejemplo:
for(var i =0;i<10;i++) 
   ggbApplet.evalCommand("A_"+i+"=(random()*10,random()*10)");
Este guión (script) crea 10 puntos A0 a A9 dispuestos en coordenadas aleatorias.

GeoGebra contiene su propia usina de JavaScript. Cuando se procede en una Hoja Dinámica a Exportar un boceto GGB, se puede elegir si emplear esta usina o la contenida en el explorador de aplicaciones applets. Para editar JavaScript en una página HTML, la variable ggbApplet no será inicializada automáticamente sino que debe hacérselo primero ggbApplet=document.applets[0];.

Atención: La interfaz JavaScript de GeoGebra es de particular interés para quienes tienen cierta experiencia en la edición en HTML.

Para desarrollar una Hoja Dinámica y aumentar su interactividad, los applets de GeoGebra ofrecen una interfaz JavaScript. Por ejemplo, se puede crear un botón para generar aleatoriamente nuevas configuraciones de una construcción dinámica. Se pueden consultar los documentos Applets de GeoGebra Applets y JavaScript (http://www.geogebra.org en Ayuda) para explorar los ejemplos y encontrar información con relación al uso de uso de JavaScript con applets de GeoGebra.

===Global JavaScript===

En la pestaña "Global JavaScript" de la de "Programas de Guión - Scripting", de la Caja de Diálogo de Propiedades, pueden definirse algunas funciones o establecerse algunas asignaciones antes de recuperar la construcción. También se puede definir la función ggbOnInit(), que se convoca automáticamente al recuperarse la construcción. La función ggbOnInit puede emplearse para registrar algunos espectadores, como se expone en el ejemplo.

Ejemplo:
function onAdd(nombre){
    alert("Objeto "+nombre+" añadido.");
}

function ggbOnInit(){
    ggbApplet.registerAddListener("onAdd");
}
En primer lugar se define la función onAdd que en tanto se le pase una cadena de texto, expone un mensaje dependiente de la cadena. Luego, usando la función ggbOnInit, se le puede indicar a GeoGebra que convoque a este función cuando se añade un nuevo objeto. Una vez que se ha recuperado la construcción, la función ggbOnInit será convocada y a partir de ese momento, cuando se fuese a añadir un punto llamado, por ejemplo, A, aparecerá el mensaje "Objeto A añadido".

También pueden emplearse espectadores para acciones del orden de renombrar, eliminar y borrar una construcción. La lista completa está disponible en [:en:Reference:JavaScript]

Nota: Al emplear un método ggbApplet cualquiera en Global JavaScript fuera de ggbOnInit, no operará como se pretende dado que será convocado antes de recuperar la construcción.

Captación (Logging) USB

Para captar datos de un USB se puede definir un espectador de captación


© 2021 International GeoGebra Institute