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

De GeoGebra Manual
Saltar a: navegación, buscar
m (Revertidos los cambios de Lilai (disc.) a la última edición de LailaTov)
 
(No se muestran 45 ediciones intermedias de 6 usuarios)
Línea 1: Línea 1:
{{tutorial|
+
{{DISPLAYTITLE:Introducción a Guiones GeoGebraScript}}
 +
{{tutoriales|
 
title=Introducción a Guiones GeoGebraScript
 
title=Introducción a Guiones GeoGebraScript
}}
+
}}__NoToc__{{Interfaz|Guiones}}
Cuando las opciones habituales de GeoGebra no resultan ágiles o adecuadas para los destinatarios o para plantear cierto escenario, puede resultar conveniente  apelar a los ''guiones'': los '''<u>guiones de GeoGebra, GeoGebraScript''', permiten crear construcciones muy simples de usar y de muy alta interactividad</u>.<br>Como se desarrollará a continuación, hay modos muy sencillos de elaborar  ''scripts'' o [[Programas - Guiones (Scripting)|guiones]] con GeoGebra, que son programas breves.
+
Cuando se requiere mayor agilidad de la ofrecida por las opciones habituales de GeoGebra o mayor interacción o un particular planteo de escenarios, puede resultar conveniente  apelar a los ''guiones'': los '''<u>guiones de GeoGebra, GeoGebraScript''', permiten crear construcciones muy simples de usar y de muy alta interactividad</u>.<br>Como se desarrollará a continuación, hay modos muy sencillos de elaborar  ''scripts'' o [[Referencia:Xml#Programa (guion-script)|guiones]] con GeoGebra, que son programas breves.
  
Los siguientes son los empleos más habituales de los [[Programas - Guiones (Scripting)|guiones]]:
+
Los siguientes son los empleos más habituales de los [[Referencia:Xml#Programa (guion-script)|guiones]]:
 
*Control de respuestas ingresadas en un campo de texto.
 
*Control de respuestas ingresadas en un campo de texto.
*Creación de nuevas tareas / desafíos tras la pulsación de un [[Botones|botón]] o por generación aleatoria  o establecida dentro de un conjunto previamente diseñado.
+
*Creación de nuevas tareas / desafíos tras la pulsación de un [[:Categoría:Objetos_de_Acción#Botones|botón]] o por generación aleatoria  o establecida dentro de un conjunto previamente diseñado.
 
*Inicio de [[Tutorial:Animándose|animaciones]] o de desenvolvimiento de nuevas secciones de la construcción al completarse una tarea.
 
*Inicio de [[Tutorial:Animándose|animaciones]] o de desenvolvimiento de nuevas secciones de la construcción al completarse una tarea.
 
*y otras que podrían considerarse...
 
*y otras que podrían considerarse...
  
<h4>Lenguajes de [[Programas - Guiones (Scripting)|guiones]]</h4>
+
<h4>Lenguajes de [[Referencia:Xml#Programa (guion-script)|guiones]]</h4>
Coexisten en GeoGebra dos lenguajes de [[Programas - Guiones (Scripting)|guiones]]: GeoGebraScript y JavaScript.
+
Coexisten en GeoGebra dos lenguajes de [[Referencia:Xml#Programa (guion-script)|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.
 
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. Aún así, para la mayor parte de las aplicaciones, GeoGebraScript es suficientemente potente.
 
Las diferencias entre el lenguaje Java de guiones es notoria dado que el JavaScript es mucho más versátil. Aún así, para la mayor parte de las aplicaciones, GeoGebraScript es suficientemente potente.
  
{{Note|1=Elaborar [[Programas - Guiones (Scripting)|guiones]] es una tarea que requiere cierta experiencia ganada en el empleo de  GeoGebra. Es conveniente empezar por recorrer previamente [[Tutorial:Página Principal|otros tutoriales]]. Las bases de la operación con guiones se establecen a continuación.}}<br>
+
{{Note|1=Elaborar [[Referencia:Xml#Programa (guion-script)|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.}}<br>
  
 
== Trasfondo: Comandos ==
 
== Trasfondo: Comandos ==
Además de las herramientas que permiten realizar construcciones, pueden emplearse [[comandos]] en la barra de entrada.  
+
Además de las herramientas que permiten realizar construcciones, pueden emplearse [[:Categoría:Comando#Comando_a_Comando|comandos]] en la barra de entrada.
{{Example|1=Con el comando <code>[[Comando Circunferencia|Circunferencia]][(1, 2), 3]</code> se puede crear una circunferencia de radio 3 y  centro en (1, 2).}}
+
{{Example|1=Con el comando <code>[[Comentarios:Comando Circunferencia|Circunferencia]]((1, 2), 3)</code> se puede crear una circunferencia de radio 3 y  centro en (1, 2).}}
  
Incluso cuando se construye con las [[Herramientas|herramientas]] de GeoGebra, tras cada [[Objetos|objeto]] creado hay un [[Comandos|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|herramientas]] pueden considerarse prácticamente como medios para facilitar el ingreso de los [[Comandos|comandos]].<br>Todos los comandos disponibles se listan [[:Category:Comandos|aquí]].<br>
+
Incluso cuando se construye con las [[Comentarios:Núm_HerramientasES|herramientas]] de GeoGebra, tras cada [[:Categoría:Objetos|objeto]] creado hay un [[:Categoría:Comando#Comando_a_Comando|comando]] que se pone en evidencia al revisar la pestaña '''Definición''' del [[Manual:Referencias_y_Cuadros_de_Diálogo#Cuadro_de_Propiedades_de_Objetos|Cuadro de Propiedades]]. Por lo que incluso las [[Comentarios:Núm_HerramientasES|herramientas]] pueden considerarse prácticamente como medios para facilitar el ingreso de los [[:Categoría:Comando#Comando_a_Comando|comandos]].<br>Todos los comandos disponibles se listan [[:Categoría:Comandos|aquí]].<br>
  
Hasta ahora, sólo se consideraron los [[Comandos|comandos]] que crean [[Objetos|objetos]] que, pese a ser mayoritarios, no son los únicos:  los hay también adecuados para  los [[Comandos_de_Guiones_-_Scripting |guiones]].<br>
+
Hasta ahora, solo se consideraron los [[:Categoría:Comando#Comando_a_Comando|comandos]] que crean [[:Categoría:Objetos|objetos]] que, pese a ser mayoritarios, no son los únicos:  los hay también adecuados para  los [[Referencia:Xml#Comandos_de_Guiones_-_Scripting |guiones]].<br>
  
 
== Guiones Básicos ==
 
== Guiones Básicos ==
Los [[Programas - Guiones (Scripting)|guiones]] son, básicamente, no más ni menos que una secuencia de comandos de GeoGebra ejecutados en una de estas dos situaciones:
+
Los [[Referencia:Xml#Programa (guion-script)|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.
 
*''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.<br>
 
*''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.<br>
  
Los [[Programas - Guiones (Scripting)|guiones]] de GeoGebra están centrados en los objetos por lo que se puede crear uno por cada objeto sea tras un ''clic'' y/o desencadenado por su actualización.<br>Sólo los guiones de Java pueden eludir el objeto que les dé cabida.
+
Los [[Referencia:Xml#Programa (guion-script)|guiones]] de GeoGebra están centrados en los objetos por lo que se puede crear uno por cada objeto sea tras un ''clic'' y/o desencadenado por su actualización.<br>Solo los guiones de Java pueden eludir el objeto que les dé cabida.
  
Para añadir un [[Programas - Guiones (Scripting)|guiones]] a un objeto, es preciso dirigirse a la pestaña {{KeyCode|1=''''Programas de Guión - Scripting'''}} de la [[Caja de Diálogo de Propiedades|'''Caja de Propiedades del Objeto''']].<br>Allí se exponen tres pestañas:<br>
+
Para añadir un [[Referencia:Xml#Programa (guion-script)|guiones]] a un objeto, es preciso dirigirse a la pestaña {{KeyCode|1=''''Programas de guion - Scripting'''}} del [[Manual:Referencias_y_Cuadros_de_Diálogo#Cuadro_de_Propiedades_de_Objetos|'''Cuadro de Propiedades Objeto''']].<br>Allí se exponen tres pestañas:<br>
  
*{{KeyCode|1=''Al Clic''}}<br>  
+
*{{KeyCode|1=''Al Clic''}}<br>
  
 
<br>
 
<br>
Línea 44: Línea 45:
 
*{{KeyCode|1=''JavaScript Global''}}<br>
 
*{{KeyCode|1=''JavaScript Global''}}<br>
  
Dejando de lado esta última pestaña, las dos primeras permiten vincular [[Programas - Guiones (Scripting)|guiones]] al objeto seleccionado.
+
Dejando de lado esta última pestaña, las dos primeras permiten vincular [[Referencia:Xml#Programa (guion-script)|guiones]] al objeto seleccionado.
  
'''[[File:Guiones .PNG|510px|thumb|center]]'''
+
'''[[File:Guiones .PNG|link=|510px|thumb|center]]'''
  
 
<h4>Actualización Guionada</h4>
 
<h4>Actualización Guionada</h4>
Desarrollo de un [[Programas - Guiones (Scripting)|guión]] desencadenado por ejemplo, {{KeyCode|1=''Al Actualizar''}}<sup><small>Ver el guión de la [http://www.geogebra.org/student/m1519 GeoGebra construcción completa]</small></sup>:
+
Desarrollo de un [[Referencia:Xml#Programa (guion-script)|guion]] desencadenado por ejemplo, {{KeyCode|1=''Al Actualizar''}}<sup><small>Ver el guion de la [https://www.geogebra.org/m/EEc7HTYj construcción completa]</small></sup>:
 
#Empezar por abrir una ventana en blanco de GeoGebra 4
 
#Empezar por abrir una ventana en blanco de GeoGebra 4
#Crear un punto "A" y una recta "a". Probar el  [[Comando Recta|comando Recta[..] ]] anotado en la [[Barra de Entrada]].
+
#Crear un punto "A" y una recta "a". Probar el  [[Comentarios:Comando_Recta|comando Recta(..) ]] anotado en la [[Manual:Barra de Entrada|Barra de Entrada]].
 
#Dirigirse a la pestaña {{KeyCode|1=''Al Actualizar''}} del panel de guiones descripto del punto '''''A'''''.
 
#Dirigirse a la pestaña {{KeyCode|1=''Al Actualizar''}} del panel de guiones descripto del punto '''''A'''''.
#Anotar, como [[Programas - Guiones (Scripting)|guión]]:<br>
+
#Anotar, como [[Referencia:Xml#Programa (guion-script)|guion]], estos comandos en inglés (en segunda instancia aparecen en castellano solo a fines ilustrativos):<br>
<center><pre>GrosorLínea[a, Distancia[A, a]*2]
+
<center><pre>
TamañoPunto[A, Distancia[A, EjeX]]</pre></center>
+
SetLineThickness(a, Distance(A, a)*2)
 +
SetPointSize(A, Distance(A, xAxis))
 +
</pre></center>
 +
<hr>
 +
En castellano sería:
 +
<center><pre>GrosorLínea(a, Distancia(A, a)*2)
 +
TamañoPunto(A, Distancia(A, EjeX))
 +
</pre></center>
 
<ol><li value="5">Al completar las anotaciones, ''clic'' en el botón ''OK'' (¡lo que es frecuente saltearse!) y cerrar la caja de diálogo.</li></ol>
 
<ol><li value="5">Al completar las anotaciones, ''clic'' en el botón ''OK'' (¡lo que es frecuente saltearse!) y cerrar la caja de diálogo.</li></ol>
<ol><li value="6">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!</li></ol>
+
<ol><li value="6">Podríamos aventurar qué es lo que este guion va a producir antes de intentarlo, solo por poner a prueba, desplazando el punto A, nuestras presunción!</li></ol>
 
 
{{OJo|1=<br>Si se asignara el guión de ''actualización'' al punto, no a la recta ni a otro objeto,  se ejecutaría el [[Programas - Guiones (Scripting)|guión]] cada vez que se desplace el punto y sólo en tal caso.<br>Esto no necesariamente implicaría que el guión provocase algún efecto sobre el punto en sí.<br>En la siguiente aplicación puede notarse que el guión se ha asignado tanto al punto como a la recta, lo que se evidencia al desplazar uno u otra.}}
 
  
 +
{{OJo|1=<br>Si se asignara el guion de ''actualización'' al punto, no a la recta ni a otro objeto,  se ejecutaría el [[Referencia:Xml#Programa (guion-script)|guion]] cada vez que se desplace el punto y solo en tal caso.<br>Esto no necesariamente implicaría que el guion provocase algún efecto sobre el punto en sí.<br>En la aplicación propuesta, puede notarse que el guion se ha asignado tanto al punto como a la recta, lo que se evidencia al desplazar uno u otra.}}
 +
<!--
 
<h3>Distancias Puntuales</h3>
 
<h3>Distancias Puntuales</h3>
 
<center><ggb_applet width="512" height="512"  version="4.0" ggbBase64="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" /></center>
 
<center><ggb_applet width="512" height="512"  version="4.0" ggbBase64="UEsDBBQACAgIAJY9UkMAAAAAAAAAAAAAAAAoAAAANmYwMzZkNDM0MWE4NDZlYjRlMTYxZmUwM2RkYzVhYjdcdGFuLlBORwFMArP9iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACE0lEQVR42mM4cODA/4HEDCDi39/fA4JHHUC5A/79RcV//9DTAX/+4wRgx+DX/yGhkTIH4AUEHPBaJwaIo8l3AEGAwwF/P36CW/5j+zHaOACnvl8/gRaH//917gaQ/YOyNIDdYtwJ8J1/+f/X+vFgR1AnEf77g4rR5L+vPfj/Q0QzGL+WD/n/xiaVvuXAa5EgFEz3gmhAHfAxswucyr8t2/n/a+9qvFFFdQd8SGkGZ7NvS3eCS0ZCOYRqDvj76TPQ4lggjvj/bdVeeDFNNwe81osEO+D7hoMEsiqVHfAusBLs67cuef+/r9tPsKCiqgM+pLT/f2OcAMRx4ERHTElJFQf8unYPaGEU0McH/n9ung8O+r8fPqIUUsQW0SQ74Ne1u5BUvnj7/98Pnvx/bZDw/+/376i+JyLxkeWAj0UTwD4Hp/p374HsSOz1BC0c8DGv//9bhyxohfMHHAofs3v/Ewf+UeYAcPZavRfusx+7TgFrtij8LSJqOQBk0Y9tR1HFVCL///38mbYOeB9WC85avy7fRhF/65zz/1PhRLQ2ADL+jUXsD2kO+JDRBS5c/n77hiL+ZeIyYEXThpTN/lGvWf5t+kYwBqXyNyaJcD4yfq0UgVWcEgx3wO87j8CWf52zEatL30fV/f86Yx3tOiYgy79MXo09C2b1YBS1eNuLWMoBjGQJbRsQmQ2BTejdJ2nrgIHEAJcxARZTxMZJAAAAAElFTkSuQmCCUEsHCLYM8PNRAgAATAIAAFBLAwQUAAgICACWPVJDAAAAAAAAAAAAAAAAKQAAADZmMDM2ZDQzNDFhODQ2ZWI0ZTE2MWZlMDNkZGM1YWI3XHRhbjEuUE5HAUwCs/2JUE5HDQoaCgAAAA1JSERSAAAAIAAAACAIBgAAAHN6evQAAAITSURBVHjaYzhw4MD/gcQMIOLf398DgkcdQLkD/v1FxX//0NMBf/7jBGDH4Nf/IaGRMgfgBQQc8FonBoijyXcAQYDDAX8/foJb/mP7Mdo4AKe+Xz+BFof//3XuBpD9g7I0gN1i3AnwnX/5/9f68WBHUCcR/vuDitHkv689+P9DRDMYv5YP+f/GJpW+5cBrkSAUTPeCaEAd8DGzC5zKvy3b+f9r72q8UUV1B3xIaQZns29Ld4JLRkI5hGoO+PvpM9DiWCCO+P9t1V54MU03B7zWiwQ74PuGgwSyKpUd8C6wEuzrty55/7+v20+woKKqAz6ktP9/Y5wAxHHgREdMSUkVB/y6dg9oYRTQxwf+f26eDw76vx8+ohRSxBbRJDvg17W7kFS+ePv/3w+e/H9tkPD/7/fvqL4nIvGR5YCPRRPAPgen+nfvgexI7PUELRzwMa///1uHLGiF8wccCh+ze/8TB/5R5gBw9lq9F+6zH7tOAWu2KPwtImo5AGTRj21HUcVUIv///fyZtg54H1YLzlq/Lt9GEX/rnPP/U+FEtDYAMv6NRewPaQ74kNEFLlz+fvuGIv5l4jJgRdOGlM3+Ua9Z/m36RjAGpfI3JolwPjJ+rRSBVZwSDHfA7zuPwJZ/nbMRq0vfR9X9/zpjHe06JiDLv0xejT0LZvVgFLV424tYygGMZAltGxCZDYFN6N0naeuAgcQAlzEBFlPExkkAAAAASUVORK5CYIJQSwcItgzw81ECAABMAgAAUEsDBBQACAgIAJY9UkMAAAAAAAAAAAAAAAAqAAAANmYwMzZkNDM0MWE4NDZlYjRlMTYxZmUwM2RkYzVhYjdcdGFuMTIuUE5HAUwCs/2JUE5HDQoaCgAAAA1JSERSAAAAIAAAACAIBgAAAHN6evQAAAITSURBVHjaYzhw4MD/gcQMIOLf398DgkcdQLkD/v1FxX//0NMBf/7jBGDH4Nf/IaGRMgfgBQQc8FonBoijyXcAQYDDAX8/foJb/mP7Mdo4AKe+Xz+BFof//3XuBpD9g7I0gN1i3AnwnX/5/9f68WBHUCcR/vuDitHkv689+P9DRDMYv5YP+f/GJpW+5cBrkSAUTPeCaEAd8DGzC5zKvy3b+f9r72q8UUV1B3xIaQZns29Ld4JLRkI5hGoO+PvpM9DiWCCO+P9t1V54MU03B7zWiwQ74PuGgwSyKpUd8C6wEuzrty55/7+v20+woKKqAz6ktP9/Y5wAxHHgREdMSUkVB/y6dg9oYRTQxwf+f26eDw76vx8+ohRSxBbRJDvg17W7kFS+ePv/3w+e/H9tkPD/7/fvqL4nIvGR5YCPRRPAPgen+nfvgexI7PUELRzwMa///1uHLGiF8wccCh+ze/8TB/5R5gBw9lq9F+6zH7tOAWu2KPwtImo5AGTRj21HUcVUIv///fyZtg54H1YLzlq/Lt9GEX/rnPP/U+FEtDYAMv6NRewPaQ74kNEFLlz+fvuGIv5l4jJgRdOGlM3+Ua9Z/m36RjAGpfI3JolwPjJ+rRSBVZwSDHfA7zuPwJZ/nbMRq0vfR9X9/zpjHe06JiDLv0xejT0LZvVgFLV424tYygGMZAltGxCZDYFN6N0naeuAgcQAlzEBFlPExkkAAAAASUVORK5CYIJQSwcItgzw81ECAABMAgAAUEsDBBQACAgIAJY9UkMAAAAAAAAAAAAAAAASAAAAZ2VvZ2VicmFfbWFjcm8ueG1s7VpdbttGEH5OT7HYh0BuLYrLXykxE6Rp0gSwnaAJigBpaqzIlcyG5LLkypYS5Ba9SY/Q956pw13SpmSKkiUrTgH7wVzO/s1+M7PzDe2Dx9M4Qmcsy0OeeJhoOkYs8XkQJmMPT8So28ePH313MGZ8zIYZRSOexVR42NIMfDkP3jRHLyajaR4+SPgxjVmeUp+98U9ZTA+5T4UceSpE+qDXOz8/16o1NZ6Ne+Ox0KZ5gBHok+QeLhsPYLm5SeemHG7oOum9OzpUy3fDJBc08RlGoGtM/YwjPw4KJTz8liZjlgj2HCPBedQofMGi1MPPJ4kf/vN3so9eTxLBMQp9njwPIxjvjHTTCSzTIrRvOWxoMeKQEdPNIPBtOnR/g+2118c/Y5Sf8vOXyVtY9EeaeVhkE9DK5+nsKU0LCPJSVin6MkknAlHdwyOMKPHw0QnHvar31URU3UJKQaMc5vvFUkiEolAO5k3EKc+KVkBFIYGRLGIxHBGJWQqSZBKzLPQxiuiQRR72Yci9gzMaTRiC3x42wXq9QlYcAPHhH8wHM49olLOLSVJxOQj6n/KIZwg2NWwbI/AWsP6wfKNRekpBohE1PKIzlql99EoCK74ajXIm0BRmYTQDN7JqnUc8KFUrF6FJGEsvQrlgqVod5SljQTGkPCcokcJu0n2V8gVqvRKMlbAMF2HRN4aFGAoW+dwYmK5LJDRd97ahoYvQdMnmLmPoEhtD+Yyjb4TMQCFDyFeAZppmLC8uu+pgEK0ghGdnuoc8RNH3aPp7x9hDP6Bh0YYnYNe7AusILplCHXy50BUI1aVR9Vf6zEOoACS6QrAOoN4K4CVApZROpmEU0mympJcGi8KEvRGziCFxGvofEzi/h/sVZIXpitaLMAhYUsK93JtSHibi4kzFHXfLp17HLUiTW9yDO5hnQS59kGiOdEJds8xB/Qdi/ZPKp3KKPP6b8FOphFuXSoil2F7tdqJ0O6HcbnSfpjx/2Jl2ANK9vdLxZvINdZu6ZWstxxQrTHT90N6pZw4qq5mrPLNXT6LFu0y1y5nDs6lgWUKb+AOa61M0QpKHsoPvo4pVXJdOkG35xJOTTDGKUTOfGFf9v56cQcPw8LuTz69Pzr5sRTTmA73Q4ba9aItIX+qBtSvAKmjvrOTOLTHfb475FffmSt7m3ipvs+TRXXs3GXipAf7PhM4oaYu1I9pyA6B9c1TPVlnWuFU/u6OA16aAVyD796+4BA1aCraOhK8LpAWSBXCUHupM4XVavtZIzHq0pdhio5Qzdx22o0ma3ZSUoW02h7beAqq9Nqg+j2OaBCiRROSZkssThxep//MvnIv8PUCxj7p0mHdKNPdR7eXDF5X+S2X5JTWo84Beud+KRF9N2X2yb8ZeJSLTaQO+lrR1rW+6rmGY5sCwDdtxSEnj23P4Et5urnZ8ybGk4wP8pdHer2mmfUQ+gGy04cy9PTxvsqtBNG/LQtdN7Lj7+2i1BR3NGPQNgxh9wySuoQ82tifsphi2kv0Uyk+MIX0P8OwjqKI+oPtj8RCVaWx5iB5CvC/E55M69V6MPknMW0OvuEEubTFeybHb84frSnuRvrl23LWFln3VAkVkasQxDNd1HN21XKh8pF26hqWZtg1d7kDXi0fLFelckPWmK/LeAfszUXPy4reHwziNQj8U25Z/AcsDJou6sqZrLATlKDRX+10pCrcoBo1tq8HDtlpwrDqPVRl4tNsvzXcVy13Fclex3FUs32TF0kKLDrc5c9OVdc0ce0OfrNf9XmU2cyO9newsfjOd5z31JDTHecoEdKQS0PE16M/42+Q+xNDh1iWL3EfvE9NxzUXy07f6fcf8GuSn9a8yuw/qJYWzaausfINFwYAAokZ/oSi4MMvXLwrakD/eDPnNC+c1a+M6iDdVGy+l373qH0Ie/QdQSwcIyliEuJ8FAACWIgAAUEsDBBQACAgIAJY9UkMAAAAAAAAAAAAAAAAWAAAAZ2VvZ2VicmFfamF2YXNjcmlwdC5qc0srzUsuyczPU0hPT/LP88zLLNHQVKiuBQBQSwcI1je9uRkAAAAXAAAAUEsDBBQACAgIAJY9UkMAAAAAAAAAAAAAAAAMAAAAZ2VvZ2VicmEueG1szVhbb9s2FH5uf8WBCuxh8EXUzXJrt0iyFSuQdsHSDsWKPFASI7ORRU2kbKfoj98hKclykl5TYE1iH5E8PJfvXEhl8Wy3LmDDaslFuXTIxHWAlanIeJkvnUZdjmPn2dOHi5yJnCU1hUtRr6laOsHEc/b7cDSJXL2ZZ0tnFgWRO59lYzrP3HFwGdJxnLJknGQBo2nmJZeXiQOwk/xxKV7RNZMVTdl5umJreipSqozMlVLV4+l0u91OOu0TUefTPE8mO5k5gJaXcum0D49R3MGmrW/YPdcl07cvT634MS+lomXKHNBeNfzpwweLLS8zsYUtz9Rq6YSzmQMrxvMVuhm5oQNTzVShrxVLFd8wiVsHQ+OzWleOYaOlXn9gn6Do3XEg4xuesXrpuJPYDeO5FwazKHJ9QuYOiJqzUrW8pNU57aQtNpxtrVj9ZDTGDighioSiRIJOwkdA4lniA3w0D6EdB+0wssOZIcS1hLSLsf6a60GEseWSJwVbOpe0kAgXLy9rDFU/luq6YEZ5O7F31R95I8wOyT8gO/EQQYuwsXOkPxF+Ate1bg58CjBtPqNa1c2BZjveKyYj/O0UG/m9Yg9XSDyaoeIwvEPxAEwXQgOC53oujDQhlnhIosguuXYOgTbEsySwJLQ8gd0eWNbA8gSWJ/C/BeI7HO3c9A/c/AK+ZKDUyvwGnZ3GMJp/vUbvPm76fSyjO5LICz/h5D2zt1PqxfFeKeoyf+ZzS6V/Lzd7ZEnofq3GKLhPnXyHwpl7UCJdfVhKWvo5GH6YUYtp1w0XrUEgV5q3zWjF1lKb6M9NIQOBEKs1mmHdhUDmSGa6S3pAQghCHJIYIk1n4OvGGIAPMWg+4uuOqIvcVG0Y41dgemcEIYrUkzPbRMEPIER2U+sBYgGmXSAyno8MYQgh7tE2EK3cjyCIcODHEKCZulHMdAf3cR+O0QQPfAK+3ktm4EUQeTDTzYYEugdFsfYAhXoQuRDprdhtsNPYLoM7YvC1T1gLlZC8h3jFiqqPjUGTl1WjDhBM11n3qETVPRrmTKRXxz3grRhGpRpw4bG1PxztMXZwdj5YFDRhBd4wznUyAGxooRuFUXApSgVdIkR2Lq9pteKpPGdK4S4J7+mGnlLFds+RW3Z2GNXmSF+wJi14xmn5N2aKFqEFQn/C6wbWnfCB71otqRB1dn4tMX1g9w+rBdrkRfpOc21Hvo83nOEPYitTqnM9mE/mw58Yl67btfDGrtZRtundoTsmO/zymmfD5xfyWBRZD3UleKlOaKWa2tzQMKK19uOozAtm4DRzeNdJrxKxO7c4+lbW6+sKR627SX4iClEDVqIXYnfNW5pYani0YT2Xa3hcw+F2geFZv07mnuEwNLHUcGGkrWmto6TzkridGi5Nj0Hhwzw0aaJvTk3J1Wk3UDy92nuq+V816wQzbJAHA5nkR8lcTG9k1eKK1SUrbO6UGMpGNNIm88CQRrIzqlZHZfYXy7EKz6huhwplW1Zjlq0tlvI1bjyoB6oD+wZttbMZy2vWuViYS7GF1qweZPKtaSPqeS3WL8rNa8yaG6Yupp0/C5nWvNK5CQn25yu2z7+MS4rdPRvuQ+clepHqHoNIKo3ib9xcszmVcNaUqsFKkA7QRq0EpkrBC0SRSsozUT7K8V7Oi0kq1pAxOMFrcC3gmCYJzbVGrHOMSgx/pqpJaoatFfNZ13jB1sgLymS1KYw+vCfmLq7jCCJ5j53nRvgH8cH1O1PcFAMtqhXVF/YWwoJes9riRroZFPhSZDehxkgaPLCdVFqATquKMZuQ1mR8qFCgqeOBQSZ6EnZLZ+xNQryCXOv3MoLn/Qf7gmZfR7S/urytXn84eyPymLgWqi+AdvyTgfY9kEWTwDOIBT8KMUzLNS0zKM0l5hR7mbM/Namrcw0o0ehZZBrVLVArqhVwC3zdFnts6X2wJ27Xlb8be3yptkUPIMo3lS06PKC0v6/x7L3C91D5jo6gLWz27mgE9OJX7+KXR8R/gl/uE2Q/6zDWy0PW39+ztxcXtxLcN8fr0plrisEak7i3vD81VKff3M1Ve4iZhz94lrGy9439W9ot0vZyvq4KnnL1LVVw9IVI7Pv1T9c5/p8gkjaGQRvDTxVccHfBeTeDMx2eJ+ZK1/735+l/UEsHCOdDC4NIBgAArRIAAFBLAQIUABQACAgIAJY9UkO2DPDzUQIAAEwCAAAoAAAAAAAAAAAAAAAAAAAAAAA2ZjAzNmQ0MzQxYTg0NmViNGUxNjFmZTAzZGRjNWFiN1x0YW4uUE5HUEsBAhQAFAAICAgAlj1SQ7YM8PNRAgAATAIAACkAAAAAAAAAAAAAAAAApwIAADZmMDM2ZDQzNDFhODQ2ZWI0ZTE2MWZlMDNkZGM1YWI3XHRhbjEuUE5HUEsBAhQAFAAICAgAlj1SQ7YM8PNRAgAATAIAACoAAAAAAAAAAAAAAAAATwUAADZmMDM2ZDQzNDFhODQ2ZWI0ZTE2MWZlMDNkZGM1YWI3XHRhbjEyLlBOR1BLAQIUABQACAgIAJY9UkPKWIS4nwUAAJYiAAASAAAAAAAAAAAAAAAAAPgHAABnZW9nZWJyYV9tYWNyby54bWxQSwECFAAUAAgICACWPVJD1je9uRkAAAAXAAAAFgAAAAAAAAAAAAAAAADXDQAAZ2VvZ2VicmFfamF2YXNjcmlwdC5qc1BLAQIUABQACAgIAJY9UkPnQwuDSAYAAK0SAAAMAAAAAAAAAAAAAAAAADQOAABnZW9nZWJyYS54bWxQSwUGAAAAAAYABgDDAQAAthQAAAAA" /></center>
 +
-->
 +
Son comandos para guiones los dos que, en inglés, se han empleado - [[Comando GrosorLínea|GrosorLínea()]] y [[Comentarios:Comando_FijaTamañoPunto|TamañoPunto()]] -. Conviene revisar la lista de los [[Referencia:Xml#Comandos_de_Guiones_-_Scripting|comandos en guiones]] para tener una idea de sus posibilidades específicas aunque los guiones no están limitados a su empleo.<br>Se puede incluir, por ejemplo, <code>f(x) = x^2</code> o <code>c = Circunferencia((0,0), 5)</code> en un guion.
 +
{{Note|1=Ver, para ilustrar la posibilidad de emplear el comando [[:Categoría:Comandos_de_Guiones_-_Scripting#Comando ZoomAcerca|ZoomAcerca]] para ''limpiar rastros'' que se detalla en el tutorial de [[Tutorial:Hacia el Algebra desde la Barra#Escenarios de Análisis|Escenarios de Análisis]]}}.<br>
  
Son comandos para guiones los dos que se han empleado ([[Comando GrosorLínea|GrosorLínea[]]] y [[Comando TamañoPunto|TamañoPunto[]]]). Conviene revisar la lista de los [[Comandos_de_Guiones_-_Scripting|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.<br>Se puede emplear, por ejemplo, <code>f(x) = x^2</code> o <code>c = Circunferencia[(0,0), 5]</code> en un guión.
+
Además de ciertas posibilidades especiales que se describen con más detalle a continuación, ejecutar un [[Referencia:Xml#Programa (guion-script)|guion]] de GeoGebra provoca el mismo efecto que el ingreso de sus líneas en la [[Manual:Barra de Entrada|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.<br>
{{Note|1=Ver, para ilustrar la posibilidad de emplear el comando [[Comando ZoomAcerca|ZoomAcerca]] para ''limpiar rastros'', la aplicación diseñada en [http://www.centrobabbage.com Centro Babbage] que se detalla en el tutorial de [[Tutorial:Hacia el Algebra desde la Barra#Escenarios de Análisis|Escenarios de Análisis]]}}.<br>
+
Además de los comandos adecuados para guiones, el más frecuente es el [[Comentarios:Comando_Si|Si(...)]], los de tipo [[:Categoría:Comandos de Lógica|lógico]] y los de [[:Categoría:Comandos de Listas|listas]].
 
 
Además de ciertas posibilidades especiales que se describen con más detalle a continuación, ejecutar un [[Programas - Guiones (Scripting)|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.<br>
 
Además de los comandos adecuados para guiones, el más frecuente es el [[Comando Si|Si[...]]], los de tipo [[Comandos de Lógica|lógico]] y los de [[Comandos de Lista|listas]].
 
  
 
{{notes|1=<br>
 
{{notes|1=<br>
*Muchos comandos de guiones sólo realizan una acción y no establecen una conexión  permanente sobre los [[Objetos Libres, Dependientes y Auxiliares|objetos dependientes]].<br>Así, por ejemplo, <code>GrosorLínea[a, Distancia[A, a]*2]</code>  sólo copiará el valor de la <code>Distancia[A,a]*2</code> durante la ejecución.<br>Luego, el valor no cambiará a menos que se ejecute nuevamente el comando o se cambie manualmente el grosor.<br>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 opera con un ''Zoom'' sobre la [[Vista Gráfica]], nada se modifica.<br><br>
+
*Cabe enfatizar que los comandos y argumentos empleados en los guiones <u>deben anotarse en inglés</u>
*A diferencia de otros lenguajes de programación, no se precisa un punto y coma al terminar cada línea del [[Programas - Guiones (Scripting)|guión]] de GeoGebra (GeoGebraScript).}}
+
*Muchos comandos de guiones solo realizan una acción y no establecen una conexión  permanente sobre los [[:Categoría:Modalidad_del_Objeto|objetos dependientes]].<br>Así, por ejemplo, <code>GrosorLínea(a, Distancia(A, a)*2)</code>  solo copiará el valor de la <code>Distancia(A,a)*2</code> durante la ejecución.<br>Luego, el valor no cambiará a menos que se ejecute nuevamente el comando o se cambie manualmente el grosor.<br>El ejemplo puede crear la impresión de haber creado una conexión pero esto es así solo porque el guion se ejecuta cada vez que el punto se desplaza. En cambio, cuando se opera con un ''Zoom'' sobre la [[Vista Gráfica]], nada se modifica.<br><br>
 +
*A diferencia de otros lenguajes de programación, no se precisa un punto y coma al terminar cada línea del [[Referencia:Xml#Programa (guion-script)|guion]] de GeoGebra (GeoGebraScript).}}
  
==Guiones a [[Botones|Botón]]==
+
==Guiones a [[:Categoría:Objetos_de_Acción#Botones|Botón]]==
Este tema se desarrolla en la sección [[Tutorial:Guiones a Botonera]] que se invita a consultar.
+
Este tema se desarrolla en la sección correspondiente del [[:Categoría:Tutoriales|tutorial]] [[Tutorial:Guiones a Botonera|Guiones a Botonera]] que se invita a consultar.
  
=== [[Botones]] ===
+
=== [[:Categoría:Objetos_de_Acción#Botones|Botones]] ===
Los guiones desencadenados {{KeyCode|1=Al ''clic''}} sobre un [[Botones|botón]] son idénticos a los de ''clic'' sobre cualquier otro objeto pero... los [[Botones|botones]] tienen ya una ''tradición'' como impulsores de un efecto y por eso parece más natural emplearlos en estos casos. Los [[Botones|botones]] se crean empleando la herramienta  [[File:Tool_Insert_Button.gif]] [[Herramienta de Inserta Botón|Inserta Botón]].
+
Los guiones desencadenados {{KeyCode|1=Al ''clic''}} sobre un [[:Categoría:Objetos_de_Acción#Botones|botón]] son idénticos a los de ''clic'' sobre cualquier otro objeto pero... los [[:Categoría:Objetos_de_Acción#Botones|botones]] tienen ya una ''tradición'' como impulsores de un efecto y por eso parece más natural emplearlos en estos casos. Los [[:Categoría:Objetos_de_Acción#Botones|botones]] se crean empleando la herramienta  [[File:Tool_Insert_Button.gif|link=Comentarios:Herramienta de Inserta Botón]] [[Comentarios:Herramienta de Inserta Botón|Botón]].
  
 
== Cajas de Entrada ==
 
== Cajas de Entrada ==
Las cajas de entrada también se denominan ''campos de texto'' se vinculan a la herramienta de [[File:Tool_Insert_Textfield.gif]] [[Herramienta de Campo de Ingreso de Texto|Campo de Ingreso de Texto]].<br>Son probablemente los objetos más poderosos de GeoGebra.<br>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.<br>
+
Las cajas de entrada también se denominan ''campos de texto'' se vinculan a la herramienta de [[File:Tool_Insert_Textfield.gif]] [[:Categoría:Objetos_de_Acción#Casilla de Entrada|Casilla de Entrada]].<br>Son probablemente los objetos más poderosos de GeoGebra.<br>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.<br>
  
Hay muchas maneras de usar las cajas de entrada en las construcciones: asociadas a objetos y a un guión {{KeyCode|1=''Al clic''}} o procesándolas a posteriori  usando otro objeto (por ejemplo, un botón) como se explicará a continuación.
+
Hay muchas maneras de usar las cajas de entrada en las construcciones: asociadas a objetos y a un guion {{KeyCode|1=''Al clic''}} o procesándolas a posteriori  usando otro objeto (por ejemplo, un botón) como se explicará a continuación.
  
 
=== Cajas de Entrada Vinculadas ===
 
=== Cajas de Entrada Vinculadas ===
Línea 91: Línea 100:
 
El siguiente ejemplo ilustra cómo pueden crearse cajas vinculadas en una construcción<sup><small>Ver la [http://www.geogebra.org/student/m1522 ilustración]</small></sup>:<br>
 
El siguiente ejemplo ilustra cómo pueden crearse cajas vinculadas en una construcción<sup><small>Ver la [http://www.geogebra.org/student/m1522 ilustración]</small></sup>:<br>
 
# Abrir una ventana en blanco de GeoGebra
 
# Abrir una ventana en blanco de GeoGebra
# Ingresar una [[Funciones|función]] como, por ejemplo. <code>f(x) = x^2</code>, en la [[Barra de Entrada]]
+
# Ingresar una [[:Categoría:Objetos_Geométricos#Funciones|función]] como, por ejemplo. <code>f(x) = x^2</code>, en la [[Manual:Barra de Entrada|Barra de Entrada]]
# Seleccionar la herramienta [[File:Tool_Insert_Textfield.gif]] [[Herramienta de Campo de Ingreso de Texto|Campo de Ingreso de Texto]] (se encuentra en la penúltima caja de la barra).
+
# Seleccionar la herramienta [[File:Tool_Insert_Textfield.gif|link=:Categoría:Objetos_de_Acción#Casilla de Entrada]] [[:Categoría:Objetos_de_Acción#Casilla de Entrada|Casilla de Entrada]] (se encuentra en la penúltima caja de la barra).
 
# 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'''''.
 
# 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'''''.
 
# 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 cambia la definición de la función y su gráfico.
 
# 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 cambia la definición de la función y su gráfico.
Línea 101: Línea 110:
  
 
=== Cajas de Entrada con Guiones {{KeyCode|1=''Al'' Clic}} ===
 
=== Cajas de Entrada con Guiones {{KeyCode|1=''Al'' Clic}} ===
En este ejemplo, ya no se vinculará la caja a otro objeto sino que se la empleará en un guión ''Al Clic'' para aplicar su valor a otros objetos,<br>Será muy similar al  primer ejemplo.<br>
+
En este ejemplo, ya no se vinculará la caja a otro objeto sino que se la empleará en un guion ''Al Clic'' para aplicar su valor a otros objetos,<br>Será muy similar al  primer ejemplo.<br>
La novedad residirá en aprender cómo usar el valor del campo de texto en el [[Programas - Guiones (Scripting)|guión-''script'']].
+
La novedad residirá en aprender cómo usar el valor del campo de texto en el [[Referencia:Xml#Programa (guion-script)|guion-''script'']].
 
<br>
 
<br>
<h4>Caja de Entrada de Texto con guión {{KeyCode|1=''Al clic''}}</h4>
+
<h4>Caja de Entrada de Texto con guion {{KeyCode|1=''Al clic''}}</h4>
La construcción<sup><small>Ver [http://www.geogebra.org/student/m1523 GeoGebra]</small></sup> se desarrolla siguiendo los siguientes pasos:<br>
+
La construcción<sup><small>Ver [https://www.geogebra.org/m/VZBT2U4t GeoGebra]</small></sup> se desarrolla siguiendo los siguientes pasos:<br>
 
#Abrir una ventana en blanco de  GeoGebra
 
#Abrir una ventana en blanco de  GeoGebra
 
#Crear un punto <code>A</code> y una recta  <code>a</code>.
 
#Crear un punto <code>A</code> y una recta  <code>a</code>.
 
#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'''.
 
#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'''.
#Ir a la pestaña {{KeyCode|1=''Al clic''}} del guión de la nueva caja (siguiendo las instrucciones previas).
+
#Ir a la pestaña {{KeyCode|1=''Al clic''}} del guion de la nueva caja (siguiendo las instrucciones previas).
#Ingresar el siguiente guión:  
+
#Ingresar el siguiente guion:
<pre>TamañoPunto[A, %0/2]
+
<pre>SetPointSize(A, %0/2)
GrosorLínea[a, %0]</pre>
+
SetLineThickness(a, %0)</pre>
 +
<hr>
 +
En castellano sería:
 +
<pre>TamañoPunto(A, %0/2)
 +
GrosorLínea(a, %0)</pre>
 
<ol><li value="6">Nuevamente ''clic'' en '''OK''' y cerrar la caja.</li></ol>
 
<ol><li value="6">Nuevamente ''clic'' en '''OK''' y cerrar la caja.</li></ol>
 
<ol><li value="7">Ahora, al ingresar un nuevo valor en la caja y pulsar {{KeyCode|Intro}} ({{KeyCode|Enter}} en algunos teclados),  queda ilustrado lo que se desencadena.</li></ol>
 
<ol><li value="7">Ahora, al ingresar un nuevo valor en la caja y pulsar {{KeyCode|Intro}} ({{KeyCode|Enter}} en algunos teclados),  queda ilustrado lo que se desencadena.</li></ol>
 +
{{OJo|1=De no ingresarse un valor en la caja de entrada, se desplegará un mensaje de error en inglés haciendo mención a la medida asignada para el [[Comentarios:Comando_FijaTamañoPunto|TamañoPunto]].}}
 
<hr>
 
<hr>
 
Como puede apreciarse, el '''<code>%0</code>''' efectivamente contiene  el valor de la caja de entrada.
 
Como puede apreciarse, el '''<code>%0</code>''' efectivamente contiene  el valor de la caja de entrada.
Línea 123: Línea 137:
  
  
<ggb_applet width="355" height="422"  version="4.2" ggbBase64="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" />
+
<ggb_applet width="355" height="422"  version="4.2" ggbBase64="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" /></center>
</center>
 
  
 
== Para Desarrollar ==
 
== Para Desarrollar ==
Línea 138: Línea 151:
 
{{Example|1=<div>
 
{{Example|1=<div>
 
*Crear un deslizador entero, denominado <code>Pasos</code>.
 
*Crear un deslizador entero, denominado <code>Pasos</code>.
*Crear un [[Botones|botón]] usando la correspondiente herramienta
+
*Crear un [[:Categoría:Objetos_de_Acción#Botones|botón]] usando la correspondiente herramienta
 
*Anotar como sub-título lo que será el rótulo visible del botón
 
*Anotar como sub-título lo que será el rótulo visible del botón
*Ingresar el guión <code>Valor[Pasos, Pasos + 1]</code> o simplemente <code>Pasos = Pasos + 1</code></div>}}
+
*Ingresar el guion <code>Valor(Pasos, Pasos + 1)</code> o simplemente <code>Pasos = Pasos + 1</code></div>}}
  
{{OJo|1=<br><br>Si se pretende que opere en forma decreciente, en lugar de  "+" debe anotarse  "-". <br><br>Para cambiar la medida de los pasos, en lugar de 1 se anotará el valor requerido.<br><br>Para volver a iniciar la secuencia de crecimiento al llegar al tope que, imaginemos fuera de 30, bastaría con anotar el guión como:<br><code>Pasos = Pasos + Si[Pasos < 30, 1, -29]</code><br><br>}}  
+
{{OJo|1=<br><br>Si se pretende que opere en forma decreciente, en lugar de  "+" debe anotarse  "-". <br><br>Para cambiar la medida de los pasos, en lugar de 1 se anotará el valor requerido.<br><br>Para volver a iniciar la secuencia de crecimiento al llegar al tope que, imaginemos fuera de 30, bastaría con anotar el guion como:<br><code>Pasos = Pasos + Si(Pasos < 30, 1, -29)</code><br><br>}}
{{Notes|1=<br><br>El comando <code>Pasos = Pasos + 1</code> sólo es válido, aún dentro de un guión, para números libres. De referir a dependientes, se provocaría un mensaje de error por '''definición circular'''<br><br>Ver el Tutorial [[Tutorial:Optando a Botonera|Optando a Botonera]]<br><br>}}
+
{{Notes|1=<br><br>El comando <code>Pasos = Pasos + 1</code> solo es válido, aún dentro de un guion, para números libres. De referir a dependientes, se provocaría un mensaje de error por '''definición circular'''<br><br>Ver el [[::Categoría:Tutoriales|Tutorial]] [[Tutorial:Optando a Botonera|Optando a Botonera]]<br><br>}}
  
 
<h2>Articulando Guiones y Campos de Entrada</h2>
 
<h2>Articulando Guiones y Campos de Entrada</h2>
Línea 150: Línea 163:
  
 
<hr><center>
 
<hr><center>
<ggb_applet width="512" height="480"  version="4.0" ggbBase64="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" /></center>
+
<ggb_applet width="512" height="400"  version="4.2" ggbBase64="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" /></center>
  
 
<div style="overflow: auto;">
 
<div style="overflow: auto;">
 
<div style="float:right;">
 
<div style="float:right;">
__TOC__
+
__NoTOC__
 
</div>
 
</div>
 
;
 
;
Línea 162: Línea 175:
  
 
[[Category:Tutoriales Avanzados]]
 
[[Category:Tutoriales Avanzados]]
[[en:Tutorial:Introduction to GeoGebraScript]]
 
[[fr:Tutoriel:Introduction GeoGebraScript]]
 
[[it:Tutorial:Introduzione a GeoGebraScript]]
 

Revisión actual del 20:26 12 ago 2020

Plantilla:TutorialesPlantilla:Interfaz Cuando se requiere mayor agilidad de la ofrecida por las opciones habituales de GeoGebra o mayor interacción o un particular planteo de escenarios, puede resultar conveniente apelar a los guiones: los guiones de GeoGebra, GeoGebraScript, permiten crear construcciones muy simples de usar y de muy alta interactividad.
Como se desarrollará a continuación, hay modos muy sencillos de elaborar scripts o guiones con GeoGebra, que 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 otras que podrían considerarse...

Lenguajes de guiones

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. Aún así, 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 del Cuadro 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, solo 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 sea tras un clic y/o desencadenado por su actualización.
Solo los guiones de Java pueden eludir el objeto que les dé cabida.

Para añadir un guiones a un objeto, es preciso dirigirse a la pestaña 'Programas de guion - Scripting del Cuadro de Propiedades Objeto.
Allí se exponen tres pestañas:

  • Al Clic


  • Al Actualizar


  • JavaScript Global

Dejando de lado esta última pestaña, las dos primeras permiten vincular guiones al objeto seleccionado.

Guiones .PNG

Actualización Guionada

Desarrollo de un guion desencadenado por ejemplo, Al ActualizarVer el guion de la construcción completa:

  1. Empezar por abrir una ventana en blanco de GeoGebra 4
  2. Crear un punto "A" y una recta "a". Probar el comando Recta(..) anotado en la Barra de Entrada.
  3. Dirigirse a la pestaña Al Actualizar del panel de guiones descripto del punto A.
  4. Anotar, como guion, estos comandos en inglés (en segunda instancia aparecen en castellano solo a fines ilustrativos):
SetLineThickness(a, Distance(A, a)*2)
SetPointSize(A, Distance(A, xAxis))

En castellano sería:

GrosorLínea(a, Distancia(A, a)*2)
TamañoPunto(A, Distancia(A, EjeX))
  1. Al completar las anotaciones, clic en el botón OK (¡lo que es frecuente saltearse!) y cerrar la caja de diálogo.
  1. Podríamos aventurar qué es lo que este guion va a producir antes de intentarlo, solo por poner a prueba, desplazando el punto A, nuestras presunción!
Bulbgraph.pngAtención:
Si se asignara el guion de actualización al punto, no a la recta ni a otro objeto, se ejecutaría el guion cada vez que se desplace el punto y solo en tal caso.
Esto no necesariamente implicaría que el guion provocase algún efecto sobre el punto en sí.
En la aplicación propuesta, puede notarse que el guion se ha asignado tanto al punto como a la recta, lo que se evidencia al desplazar uno u otra.

Son comandos para guiones los dos que, en inglés, se han empleado - GrosorLínea() y TamañoPunto() -. Conviene revisar la lista de los comandos en guiones para tener una idea de sus posibilidades específicas aunque los guiones no están limitados a su empleo.
Se puede incluir, por ejemplo, f(x) = x^2 o c = Circunferencia((0,0), 5) en un guion.

Nota: Ver, para ilustrar la posibilidad de emplear el comando ZoomAcerca para limpiar rastros que se detalla en el tutorial de Escenarios de Análisis

.

Además de ciertas posibilidades especiales que se describen con más detalle a continuación, ejecutar un guion 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.

Notas:
  • Cabe enfatizar que los comandos y argumentos empleados en los guiones deben anotarse en inglés
  • Muchos comandos de guiones solo 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) solo 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í solo porque el guion se ejecuta cada vez que el punto se desplaza. En cambio, cuando se opera con un Zoom sobre la Vista Gráfica, nada se modifica.

  • A diferencia de otros lenguajes de programación, no se precisa un punto y coma al terminar cada línea del guion de GeoGebra (GeoGebraScript).

Guiones a Botón

Este tema se desarrolla en la sección correspondiente del tutorial Guiones a Botonera que se invita a consultar.

Botones

Los guiones desencadenados Al 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 herramienta Tool Insert Button.gif Botón.

Cajas de Entrada

Las cajas de entrada también se denominan campos de texto se vinculan a la herramienta de Tool Insert Textfield.gif Casilla de Entrada.
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: asociadas a objetos y a un guion Al 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.

Cajas Vinculadas en Construcciones

El siguiente ejemplo ilustra cómo pueden crearse cajas vinculadas en una construcciónVer la ilustración:

  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 herramienta Tool Insert Textfield.gif Casilla de Entrada (se encuentra en la penúltima caja 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 cambia 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, sean 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 guion Al Clic para aplicar su valor a otros objetos,
Será muy similar al primer ejemplo.
La novedad residirá en aprender cómo usar el valor del campo de texto en el guion-script.

Caja de Entrada de Texto con guion Al clic

La construcciónVer GeoGebra se desarrolla siguiendo los siguientes pasos:

  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 guion de la nueva caja (siguiendo las instrucciones previas).
  5. Ingresar el siguiente guion:
SetPointSize(A, %0/2)
SetLineThickness(a, %0)

En castellano sería:

TamañoPunto(A, %0/2)
GrosorLínea(a, %0)
  1. Nuevamente clic en OK y cerrar la caja.
  1. Ahora, al ingresar un nuevo valor en la caja y pulsar Intro (Enter en algunos teclados), queda ilustrado lo que se desencadena.
Bulbgraph.pngAtención: De no ingresarse un valor en la caja de entrada, se desplegará un mensaje de error en inglés haciendo mención a la medida asignada para el TamañoPunto.

Como puede apreciarse, el %0 efectivamente contiene el valor de la caja de entrada.


Medidas del Punto y la Recta

En la aplicación se puede ingresar un valor numérico en el campo de entrada de Medida para apreciar el efecto sobre el grosor del trazo de la recta y el tamaño de la representación del punto.

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 guion Valor(Pasos, Pasos + 1) o simplemente Pasos = Pasos + 1
Bulbgraph.pngAtención:

Si se pretende que opere en forma decreciente, en lugar de "+" debe anotarse "-".

Para cambiar la medida de los pasos, en lugar de 1 se anotará el valor requerido.

Para volver a iniciar la secuencia de crecimiento al llegar al tope que, imaginemos fuera de 30, bastaría con anotar el guion como:
Pasos = Pasos + Si(Pasos < 30, 1, -29)

Notas:

El comando Pasos = Pasos + 1 solo es válido, aún dentro de un guion, para números libres. De referir a dependientes, se provocaría un mensaje de error por definición circular

Ver el [[::Categoría:Tutoriales|Tutorial]] Optando a Botonera

Articulando Guiones y Campos de Entrada

En la siguiente aplicación aparece en acción la potencia conjunta de los campos de entrada y los guiones para tantear, explorar y validar resoluciones triangulares.
Es notorio que pueden deslizarse los puntos para tantear planteos y soluciones y/o establecer los valores directamente en cada campo de entrada para que, clic mediante, asignarle a los lados valores precisos.




© 2024 International GeoGebra Institute