Diferencia entre revisiones de «Tutorial:Introducción a Guiones GeoGebraScript»

De GeoGebra Manual
Saltar a: navegación, buscar
Línea 35: Línea 35:
 
Para añadir un guión a un objeto, es preciso dirigirse a la pestaña ''''Programas de Guión - Scripting''' de la '''Caja de Propiedades del Objeto'''. Allí se exponen tres ''Al Clic'', ''Al Actualizar'' y ''JavaScript Global''. Dejando de lado esta última pestaña, las dos primeras permiten vincluar guiones al objeto seleccionado.
 
Para añadir un guión a un objeto, es preciso dirigirse a la pestaña ''''Programas de Guión - Scripting''' de la '''Caja de Propiedades del Objeto'''. Allí se exponen tres ''Al Clic'', ''Al Actualizar'' y ''JavaScript Global''. Dejando de lado esta última pestaña, las dos primeras permiten vincluar guiones al objeto seleccionado.
  
[[file:open-script-screen.png|Clic permite ampliar|750px]]
+
'''[[File:Guiones.PNG|Center|620 px]]'''
  
 
Por ejemplo, ''Al Actualizar'':
 
Por ejemplo, ''Al Actualizar'':

Revisión del 22:28 29 abr 2012

Tutorial: Introducción a Guiones GeoGebraScript

Cuando las opciones habituales de GeoGebra no resultan ágiles o adecuadas para los destinatarios para los que cierto escenario estuviera planteado, puede resultar conveniente apelar a los guiones: los guiones de GeoGebra, GeoGebraScript, permiten crear construcciones muy simples de usar y de muy alta interactividad. Hay modos muy sencillos de elaborar guiones con GeoGebra: los guiones o scripts son programas breves.

Los siguientes son los empleos más habituales de los guiones:
  • Control de respuestas ingresadas en un campo de texto.
  • Creación de nuevas tareas / desafíos tras la pulsación de un botón o por generación aleatoria o establecida dentro de un conjunto previamente diseñado.
  • Inicio de animaciones o de desenvolvimiento de nuevas secciones de la construcción al completarse una tarea.
  • (y así sucesivamente..)

Coexisten en GeoGebra dos lenguajes de guiones: GeoGebraScript y JavaScript. Esta introducción se centrará en GeoGebraScript que emplea la sintaxis de los comandos de GeoGebra y por lo tanto es más sencilla de aprender para quienes están habituados a trabajar con GeoGebra. Las diferencias entre el lenguaje Java de guiones es notoria dado que el JavaScript es mucho más versátil pero para la mayor parte de las aplicaciones, GeoGebraScript es suficientemente potente.

Nota: Elaborar guiones es una tarea que requiere cierta experiencia ganada en el empleo de GeoGebra. Es conveniente empezar por recorrer previamente otros tutoriales. Las bases de la operación con guiones se establecen a continuación.

Trasfondo: Comandos

Además de las herramientas que permiten realizar construcciones, pueden emplearse comandos en la barra de entrada.

Ejemplo: Con el comando Circunferencia[(1, 2), 3] se puede crear una circunferencia de radio 3 y centro en (1, 2).

Incluso cuando se construye con las herramientas de GeoGebra, tras cada objeto creado hay un comando que se pone en evidencia al revisar la pestaña Definición de la Caja de Diálogo de Propiedades. Por lo que incluso las herramientas pueden considerarse prácticamente como medios para facilitar el ingreso de los comandos. Todos los comandos disponibles se listan aquí.

Hasta ahora, sólo se consideraron los comandos que crean objetos que, pese a ser mayoritarios, no son los únicos: los hay también adecuados para los guiones.

Guiones Básicos

Los guiones son, básicamente, no más ni menos que una secuencia de comandos de GeoGebra ejecutados en una de estas dos situaciones:

  • Clic: tras un clic sobre un objeto.
  • Actualización: cuando un valor o propiedad del objeto cambia. Esto puede suceder si se desplaza un elemento de la construcción, cambia el valor de un deslizador, etc.

Los guiones de GeoGebra están centrados en los objetos por lo que se puede crear uno por cada objeto y uno para un clic y uno para su actualización. Sólo los guiones de Java pueden eludir el objeto que les dé cabida.

Para añadir un guión a un objeto, es preciso dirigirse a la pestaña 'Programas de Guión - Scripting de la Caja de Propiedades del Objeto. Allí se exponen tres Al Clic, Al Actualizar y JavaScript Global. Dejando de lado esta última pestaña, las dos primeras permiten vincluar guiones al objeto seleccionado.

Center

Por ejemplo, Al Actualizar:

Ejemplo: (Puede verse el guión de la construcción completa en GeoGebra)
  1. Empezar por abrir una ventana en blanco de GeoGebra 4
  2. Crear un punto "A" y una recta "a". Probar el comando Recta[..] if anotado en la Barra de Entrada.
  3. Abrir la pestaña Al Actualizar del panel de guiones descripto.
  4. Anotar
GrosorLínea[a, Distancia[A, a]*2]
TamañoPunto[A, Distancia[A, EjeX]]

como un guión, clic el botón OK (¡lo que es frecuente saltearse!) y cerrar la caja de diálogo.

    <el valor="5">Podríamos aventurar qué es lo que este guión va a producir antes de intentarlo, sólo por poner a prueba, desplazando el punto A, nuestras presunción!

Como puede notarse se ha asignado el guión de actualización al punto, no a la recta ni a otro objeto. Esto implica que se ejecutará el guión cada vez que se desplace el punto. Esto no necesariamente implicaría que el guión provoque algún efecto sobre el punto en sí.

Son comandos para guiones los dos que se han empleado ( GrosorLínea[] y TamañoPunto[]). Conviene revisar la lista de los comandos de guiones para tener una idea de sus posibilidades específicas aunque los guiones no están limitados a emplear este tipo de comandos. Se puede emplear, por ejemplo, f(x) = x^2 o c = Circunferencia[(0,0), 5] en un guión.

Además de ciertas posibilidades especiales que se describen con más detalle a continuación, ejecutar un guión de GeoGebra provoca el mismo efecto que el ingreso de sus líneas en la barra de entrada. Por lo tanto, pasaremos a detallar los objetos especiales que se emplean en los guiones como, específicamente, los campos de texto o los botones. Además de los comandos adecuados para guiones, el más frecuente es el Si[...], los de tipo lógico y los de listas.

Nota: Muchos comandos de guiones sólo realizan una acción y no establecen una conexión permanente sobre los objetos dependientes. Así, por ejemplo, GrosorLínea[a, Distancia[A, a]*2] sólo copiará el valor de la Distancia[A,a]*2 durante la ejecución. Luego, el valor no cambiará a menos que se ejecute nuevamente el comando o se cambie manualmente el grosor. El ejemplo puede crear la impresión de haber creado una conexión pero esto es así sólo porque el guión se ejecuta cada vez que el punto se desplaza. En cambio, cuando se desplaza la recta, nada se modifica.
Nota: A diferencia de otros lenguajes de programación, no se precisa un punto y coma al terminar cada línea del guión de GeoGebra (GeoGebraScript).

Botones

Los guiones de clic sobre un botón son idénticos a los de clic sobre cualquier otro objeto pero... los botones tienen ya una tradición como impulsores de un efecto y por eso parece más natural emplearlos en estos casos. Los botones se crean empleando la Tool Insert Button.gif Herramienta de Inserta Botón.

Cajas de Entrada

Las cajas de entrada (también denominadas campos de texto), ver la Tool Insert Textfield.gif Herramienta de Ingreso en el Campo de Texto, son probablemente los objetos más poderosos de GeoGebra. Permiten el ingreso de texto, números, funciones y cualquier otra entrada que se podría anotar manualmente, para convertirla de texto a objeto de GeoGebra.

Hay muchas maneras de usar las cajas de entrada en las construcciones: con objetos, asociadas a un guión de clic o procesándolas a posteriori usando otro objeto (por ejemplo, un botón) como se explicará a continuación.

Cajas de Entrada Vinculadas

Son cajas vinculadas a un objeto de GeoGebra existente: esto implica que exponen el valor del objeto que, a su vez, se modifica cuando se anota otro. Esto permite cambiar, por ejemplo, la definición de una función o cualquier valor numérico sin emplear deslizadores. Básicamente, son cajas de entrada que pueden cambiar un simple objeto sin riesgos de cambios dramáticos en el resto de una construcción o de la hoja dinámica en general.

El siguiente ejemplo ilustra cómo pueden crearse.

Ejemplo: (Cajas vinculadas, la construcción se encuentra en GeoGebra)
  1. Abrir una ventana en blanco de GeoGebra
  2. Ingresar una función como, por ejemplo. f(x) = x^2, en la barra de entrada
  3. Seleccionar la Tool Insert Textfield.gif Herramienta de Ingreso en el Campo de Texto que se encuentra en la penúltima cada de la barra).
  4. Un clic en cualquier lugar de la hoja dinámica desplegará una caja de diálogo en la que se puede ingresar "f(x) =" y como Objeto Vinculado, seleccionar la función f.
  5. Al desplazar el gráfico, el campo de texto automáticamente expondrá la nueva definición de la función. También se puede modificar el contenido del campo de texto para ver cómo se modifica la definición de la función y su gráfico.
Nota: Tal como se señaló, además de funciones, se puede modificar cualquier objeto que se desee, además de valores numéricos o contenidos de texto.

Cajas de Entrada con Guiones al Clic

En este ejemplo, ya no se vinculará la caja a otro objeto sino que se la empleará en un guión A Clic para aplicar su valor a otros objetos y será muy similar al primer ejemplo. La novedad residirá en aprender cómo usar el valor del campo de texto en el guión-script y la respuesta será.... %0. Efectivamente... %0.

Ejemplo: (Caja de Entrada de Texto con guión al clic, en GeoGebra)
  1. Abrir una ventana en blanco de GeoGebra
  2. Crear un punto A y una recta a.
  3. Seleccionar la herramienta de la caja de entrada y con un clic en cualquier posición de la Vista Gráfica y en la caja emergente, anotar Medida: dejando en blanco el campo del Objeto Vinculado.
  4. Ir a la pestaña Al Clic del guión de la nueva caja (siguiendo las instrucciones previas).
  5. Ingresar el siguiente guión:
TamañoPunto[A, %0/2]
GrosorLínea[a, %0]

Clic "OK" nuevamente y cerrar la caja.

  • Ahora, al ingresar un nuevo valor en la caja y pulas Enter, queda ilustrado lo que se desencadena.
  • Como puede apreciarse, el %0 efectivamente contiene el valor de la caja de entrada.

    Para Desarrollar

    A partir de cierto conocimiento de guiones, es posible preparar:

    • Instructivos diversos para principiantes
    • Ejemplos más concretos y enlaces a archivos de GeoGebra

    Guiones - Ejemplos

    Botones: Crecientes / Decrecientes

    En lugar de deslizadores para exponer una explicación paso a paso, se pueden usar botones.

    Ejemplo:
    • Crear un deslizador entero, denominado Pasos.
    • Crear un Botón usando la correspondiente herramienta
    • Anotar como sub-título lo que será el rótulo visible del botón
    • Ingresar el guión Valor[Pasos, Pasos + 1] o simplemente Pasos = Pasos + 1

    Si se pretende que opere en forma decreciente, en ligar de "+" debe anotarse "-". Para cambiar la medida de los pasos, en lugar de 1 se anotará el valor requerido.

    Si se pretende volver a iniciar la secuencia de crecimiento al llegar al tope que, imaginemos fuera de 30, bastaría con anotar el guión como: Pasos = Pasos + Si[Pasos < 30, 1, -29]

    Nota: El comando Pasos = Pasos + 1 sólo es válido dentro de un guión. En cualquier otro comando provocaría un mensaje de error por definición circular

    en:Tutorial:Introduction to GeoGebraScript fr:Tutoriel:Introduction GeoGebraScript it:Tutorial:Introduzione a GeoGebraScript

    © 2024 International GeoGebra Institute