sábado, 6 de febrero de 2016

Aprendiendo a programar con Processing #tecnoprograbótica #3ESO

Estoy aprendiendo a programar en Processing, para poder impartirlo en el aula. Llevo unos días mirando ejemplos, referencias de código, buscando tutoriales, probando código, haciendo mis variaciones, viendo vídeos del curso StemByMe o de la UPV... Trasnochando, vaya!
Y en un alarde de "qué entretenido estoy", he decidido subir uno de mis primeros programas a una plataforma pública.
Processing es un sub-lenguaje de Java ideado para programar entornos visuales con imágenes, animaciones e interacciones. Es un proyecto abierto y libre.



El siguiente applet es una prueba de la potencia de dicha aplicación, de su capacidad de interactividad con el teclado y de las herramientas aleatorias y secuenciales que facilitan el movimiento en los dibujos y los cambios de color. La verdad es que me está encantando.

No es completamente necesario, pero a grandes rasgos cualquier programa con processing debe tener un bloque de declaración de variables globales, otro setup() para inicialización de parámetros y otro draw() para realizar de manera indefinida las iteraciones de dibujo. Además puede recurrirse a generar código de funciones repetitivas, en mi caso 'pelota()' y la función propia del software 'keyReleased()' para comprobar las pulsaciones sobre el teclado.

En el applet de más abajo se puede interactuar un poco, haciendo primero clic sobre él (para que tome el foco) y pulsando las teclas 'a' y 'b' para elegir el modo de dibujo, o  'r' para resetear y limpiar la pantalla. Estos son los tres casos 0,1 y 2 del 'switch(estado)', respectivamente.

Con la tecla 'a' se dibujan círculos de colores y contornos aleatorios, con el centro también en posición aleatoria 'x,y' que va variando su posición poco a poco en función del parámetro de separación 'sep'. en caso de llegar a los extremos, se comienza de nuevo en el centro.

Con la tecla 'b' se dibujan secuencias de círculos que avanzan de manera lineal horizontalmente, a una distancia 'vx', según la expresión 'x=x+vx', rebotando en los bordes laterales 'vx=vx*-1'. Se puede cambiar el número vertical de círculos que avanzan cada vez con la iteración 'for', en este caso ejecutada 8 veces. El enlace al applet en la plataforma OpenProcessing es este


Las líneas de código están en estos enlaces.

Versión txt Si lo quieres abrir con un procesador de texto simple como notepad
versión pde Si lo quieres abrir directamente en Processing. Y trastear con él, jugando con los valores de los parámetros, para hacer más grandes o más pequeños los círculos o las distancias entre ellos, jugar con los colores aleatorios...

Reconozco que me ha quedado un pelín enrevesado y caótico... Mis disculpas, es que estoy aprendiendo, y aún no tengo nada muy depurado. Estoy en los inicios del comienzo de los prolegómenos de mi aprendizaje con Processing, paciencia.

He procurado poner comentarios para hacer más claro el programa.

Espero que mis alumnos se animen a programar y no se pongan de espaldas ni de perfil. Que lo aborden de frente resultará mucho mejor.

No hay comentarios:

Publicar un comentario

Gracias por tus comentarios!

Blogging tips