4.8. Toma de decisiones y eventos
En otros casos debemos utilizar el procedimiento de Descartes para establecer disyuntivas. Es importante que realicemos la actividad 4.13 para ver cómo tomar decisiones condicionadas del tipo pregunta, cuya estructura es del tipo P=(condición)?a:b, donde P valdrá a si se cumple la condición y b si no se cumple.
Otra forma de utilizar los operadores booleanos son los eventos, auxiliares que detectan si se cumple una condición y la ejecutan. Si en la configuración de una escena añadimos un auxiliar evento, aparece una ventana con los siguientes elementos:
Los eventos tienen un nombre y una condición (expresión booleana) que cuando se cumple realizan la acción seleccionada.
id
|
Es el identificador del auxiliar. En el caso de una función o algoritmo debe incluir los parámetros de los que dependa escritos entre paréntesis y separados por comas. Por ejemplo: f(x,y,x). |
condición
|
Condición que, cuando se cumple, genera la acción. Una vez realizada la acción, ésta sólo vuelve a realizarse cuando la condición deja de cumplirse y luego vuelve a cumplirse. |
acción
|
Acción que se realizará si se pulsa el botón en un control numérico con interfaz botón.
Existen las siguientes acciones: "mensaje", "calcular", "abrir URL", "abrir Escena", "créditos", "config", "inicio", "limpiar","animar", "iniciar animación" y "reproducir". |
parámetro |
El parámetro de la acción. Si la acción es "mensaje" entonces el parámetro es el contenido del mensaje. Si la acción es "calcular", entonces parámetro debe contener cero o varias asignaciones (separadas por ; o salto de línea) que el programa realizará cuando se ejecute la acción. Si la acción es "abrir URL", el parámetro puede ser cualquier URL. Si la acción es "abrir Escena" el parámetro debe ser una dirección relativa y lo que hace es abrir la primera escena de Descartes que encuentra en esa dirección. Los parámetros "abrir URL" y "abrir Escena" admiten los atributos target con dos opciones: _self si se pone como valor del atributo target, la abre sobre el mismo applet.
Dirección: pagina.htm target=_self
Si la acción es "reproducir" entonces el parámtro debe llevar la acción relativa de un fichero de audio con extensión mp3. |
ejecución |
Determina el modo de ejecución de la acción del evento. Si ejecución=una-sola-vez, sólo se ejecuta la primera vez que se cumple la condición. Si ejecución=alternar entonces se ejecuta la primera vez que la condición se cumple, pero si la condición deja de ser válida y vuelve a serlo luego, entonces vuelve a ejecutarse la acción. Si ejecución=siempre, la acción se ejecuta siempre que se cumpla la condición. El valor por defecto es alternar. |
pos mensajes
|
Determina la posición donde aparecerá el mensaje si la acción seleccionada es, precisamente, "mensaje". Las opciones son: centro, arr_izq, arriba, arr_der, izquierda, derecha, ab_izq, abajo y ab_der. El valor por defecto es "centro". |
Las acciones posibles son:
mensaje | Abre una pequeña ventana con un mensaje de texto cuyo contenido es el del parámetro.. La posición de esta ventana puede determinarse con el valor de pos_mensajes que puede tomar los siguientes valores: centro, arr_izq, arriba, arr_der, izquierda, derecha, ab_izq, abajo y ab_der. El valor por defecto de pos_mensajes es centro. |
calcular | Realiza los cálculos (asignaciones) indicadas en el parámetro y actualiza inmediatamente todos los controles con estos nuevos valores. |
abrir URL | Abre una página Web en una ventana nueva del navegador |
abrir Escena | Abre una escena de Descartes en una ventana autónoma |
créditos | Abre la ventana de créditos |
config | Abre la ventana de configuración |
inicio | Reinicia la escena |
limpiar | Borra todos los rastros dejados por los gráficos. |
animar | Comienza la animación, la detiene (pausa) o la continúa. |
reiniciar animación | Inicializa la animación, es decir, la devuelve a su punto inicial. |
reproducir | Inicia la reproducción del archivo de audio indicado en el parámetro. Para que aparezca esta opción debe de estar seleccionada la opción audio en el menú botones del editor de configuración de la escena. |
Hay tres modos de ejecución: una-sola-vez, alternar y siempre. que se explican en la siguiente tabla.
una-sola-vez | La acción sólo se ejecuta la primera vez que se cumple la condición. |
alternar | En este caso la acción se ejecuta una vez cuando la condición se cumple y no se vuelve a ejecutar hasta que la condición ha dejado de ser verdadera y vuelve a ser verdadera otra vez. |
siempre | Significa que la acción se ejecutará cada vez que la condición se cumpla. |
En las actividades 4.15 y 4.16 se trabaja sobre distintos eventos, incluido los relacionados con la introducción de sonidos en las escenas.
Otro ejemplo de toma de decisiones se presenta en la siguiente escena, donde con los controles tipo menú se deberá de elegir la respuesta correcta a las preguntas planteadas