Clase 3. Funciones, curvas paramétricas, control menú y dibujar-si.

Bienvenido, sigue avanzando así. Estamos ya en la tercera sesión de la unidad, en ella aprenderás más sobre curvas paramétricas; recuerda que las ecuaciones paramétricas posibilitan una gran variedad de curvas, algunas conocidas, otras extrañas, algunas complejas, otras sorprendentes por su simetría y belleza. Estas curvas se generan cuando x y y se expresan en función de una tercera variable llamada parámetro.

Ahora bien, en esta clase practicaremos precisamente la creación de una escena exploratoria de dos dimensiones. En ella haremos uso de curvas, de funciones, de un control numérico llamado Menú y del campo dibujar-si, donde se utilizan condiciones booleanas.

Con esta escena se permitirá al alumno seleccionar el tipo de curva que desee manipular mediante la variación de parámetros, para que de este modo, observe de qué manera afecta a la curva.

La escena que tendrás que desarrollar es parecida a la que a continuación se presenta:

Esta unidad interactiva requiere la máquina virtual de Java J2RE.

Recuerda la importancia de seguir al pie de la letra los pasos y de mirar con atención todos los videos; no olvides tampoco que puedes acceder a la documentación de Descartes o escribirle al tutor en caso de ser necesario.

Desarrollo

  1. Ejecutemos el Gestor de escenas Descartes: crea un nuevo archivo llamado "parametricas.html" y guárdalo.

  2. Agrega una escena de tipo Descartes 4. Personaliza la escena a tu gusto, cambia el color de fondo, desactiva los ejes, etc.

  3. Recuerda que las ecuaciones paramétricas posibilitan una gran variedad de curvas, que se generan cuando las variables x e y se expresan en función de otra variable llamada parámetro, Descartes utiliza el parámetro t.

    Cada valor de t determinará un punto (x,y), cuando t varía, el punto varía y traza una curva llamada curva paramétrica.

    Las curvas que se usarán en la escena se muestran en la siguiente tabla:

    Espiral
    Lemniscata
    Círculo
    Epicicloides
    Hipocicloides

    Como podrás observar en las ecuaciones se tienen diferentes parámetros que intervienen en ellas. En la escena debemos agregar controles numéricos tipo pulsador, llamados a, b, c y r. Digamos que el valor inicial de a y b sea de 12, el de c de 4, y el de r de 1; el incremento de los tres primeros será de 1 y el de r de 0.1 y con valor mínimo de 0.1. Los controles tendrán que ubicarse en la región sur del espacio.

    Necesitaremos agregar otro pulsador que nos permita generar las curvas que se presentan en la escena superior, a dicho pulsador lo llamaremos rango, coloca el valor inicial en 1 al igual que los incrementos, el valor mínimo del pulsador que sea de 1.

  4. ¡Bien hecho! Ahora vamos a añadir dos funciones para cada tipo de curva, una para x y otra para y, de tal manera que entre las dos funciones tendremos la ecuación paramétrica para cada curva.

    Observa con atención el siguiente video que explica el uso del Auxiliar funciones.

    Panel Auxiliares: Funciones.

    Una vez que hayas seguido los pasos anteriores, comenzaremos a crear las funciones para la espiral, debemos agregar una función llamada f1(x) que contenga la expresión a*cos(x+c)/sqrt(1+x^2); sqrt es una instrucción en Descartes que permite obtener la raíz cuadrada de cualquier número, para sacar el ^ usa el código ASCII presionando la tecla alt y, sin soltarla, teclea el número 94.

    Agrega una función llamada g1(x) que sea igual a b*sen(x+c)/sqrt(1+x^2).

  5. En el siguiente video se explica el funcionamiento de las curvas:

    Panel Gráficos: Curvas.

    Ahora debemos agregar una curva cuyas coordenadas sean [f1(t),g1(t)], no te olvides de aplicar los cambios, modifica los valores de los parámetros a, b y c.

    Como podrás notar sólo aparece una parte de nuestra curva, esto se debe a que nos falta modificar el intervalo en el que se va a representar la curva y el número de pasos, mientras más segmentos se usen mejor quedará la curva que deseas.

    Coloca el intervalo del parámetro t de 0 a rango ([0,rango]) en 200 pasos.

    Ahora agrega las funciones correspondientes para las cuatro curvas paramétricas restantes y las respectivas gráficas. El intervalo para las Epicicloides y para las Hipocicloides es de [0,2*pi*rango] en 400 pasos.

  6. Desde el Panel Controles agrega un control numérico y llámalo menú, el tipo del control que acabas de agregar es pulsador, cambialo por menú, seleccionando del menú desplegable dicha opción, colócalo en el interior del espacio y aplica los cambios.

    En la parte de opciones escribe los nombres de cada una de las curvas separadas por comas, de esta manera en el menú aparecerán todas las curvas con su respectivo identificador, para dejar en "blanco de inicio" el menú, agrega antes de las opciones espacios y luego una coma.

    Ahora indicaremos la posición en la que se ubica el menú dentro del espacio por medio del campo pos, también puede configurarse el largo y alto del menú, por ejemplo: (0,0,100,20) indica que el menú está en el origen, tiene de largo 100 y de alto 20 pixeles.

    Ubica el menú en las coordenadas (200,20), que tenga de largo 150 y alto 25 pixeles, asegúrate que no tenga decimales y deja el campo nombre vacío.

  7. Como notarás, al seleccionar una opción del menú el nombre y el número cambian, sin embargo ésto no se ve reflejado en la escena, para que se realice una acción con el menú, haremos uso de condicionales. Una condicional es una expresión de tipo booleana ya que su evaluación arroja un valor de verdad para la condición: 0 para falso y 1 para verdadero.

    La estructura de un condicional simple en Descartes es la siguiente:

    Si menu=1 Entonces
    Dibujar la curva Espiral

    En cada curva, hay una casilla llamada dibujar-si, selecciona la curva Espiral y, en dibujar-si, coloca menu=1; en la curva Lemniscata en la parte de dibujar-si coloca menu=2, y así sucesivamente para cada una de las curvas; acepta los cambios, y observa que ahora se muestra únicamente la curva que se selecciona en el menú.

  8. Existen parámetros que se usan sólo en ciertas curvas, por lo tanto hay que agregar los textos correspondientes para cada caso. Por ejemplo, para modificar la espiral, se usan a, b y c, entonces agreguemos un texto para cada curva donde se indiquen los parámetros que deben modificarse y señalemos que también varíen el rango.

  9. En el caso de las Epicicloides existen tres formas particulares que hay que señalar: cuando a= b, se forma un Cardioide, cuando a = 4b se forma un Nefroide y cuando a = 4b se forma un Rnunculus. Para hacerlo, agreguemos tres textos (uno para cada caso anterior), como verás, aparte de que se cumpla que la opción del menú sea 4, también se tienen que cumplir las condiciones anteriores. En Descartes se pueden escribir condicionales dobles de la siguiente manera:

    (menu=4)&(a=b), será verdadero siempre y cuando menu tenga el valor de 4 y el parámetro a sea igual al parámetro b.

    (menu=4)|(a=b), será verdadero si menu es 4 o a=b, no es necesario que las dos condiciones se cumplan.

    Agrega los letreros correspondientes en los Epicicloides para los tres casos anteriores, agrega en los Hipocicloides los casos cuando a = 3c (Deltoide) y cuando a = 4c (Astroide).

  10. Como notarás cada que seleccionas una curva del menú el valor de los pulsadores no cambia, para hacer que tomen valores iniciales cada vez que se seleccione una curva, hay que especificarlo dentro del campo parámetro y seleccionar la acción calcular.

    Vamos a hacer que cada vez que se seleccione una curva el rango se ponga en 1, abre la configuración, ve al Panel Controles y selecciona el menú, en acción elije Calcular, presiona parámetro, en la ventana que sale escribe rango=1 y aceptar. Para probar que funcione elige una curva y modifica rango, luego elige otra curva ¿qué pasa con el valor del rango?

    No olvides publicar tu escena.

En resumen

En esta sesión hemos aprendido a utilizar funciones, parametrizar curvas, usar menús y hacer uso de condicionales.¡Felicidades!

Evidencia de Aprendizaje

Haciendo uso de los conocimientos y habilidades adquiridas en las clases pasadas, desarrolla una escena donde se muestre cómo se construye una Epicicloide.

Esta unidad interactiva requiere la máquina virtual de Java J2RE.

Para practicar

Mira cómo están elaboradas las siguientes escenas y trata de reproducirlas.