2.10. Métodos de entrada

Processing puede censar diferentes sistemas de entrada de información que tienen las computadoras. Los más usuales son el mouse y el teclado, los cuales serán revisados en este apartado.

2.10.1. Mouse

Dentro de processing existe la posibilidad de utilizar propiedades dinámicas que puede entregar el mouse, en principio con las variables mouseX y mouseY, las cuales permiten tener en todo momento las coordenadas x e y de la posición del puntero del mouse en tiempo real. Pero también se puede contar con otras características del mouse como las variables pmouseX y pmouseY, que básicamente guardan los valores de posición que el mouse tenía un cuadro anterior. Si el mouse no se mueve, el valor es siempre el mismo, pero si el mouse se mueve rápidamente, la diferencia entre un valor y el siguiente puede cambiar de forma vertiginosa. Esto sucede porque el mouse recorre un trayecto más grande (muchos píxeles) en menos tiempo. De estos valores se puede deducir la velocidad a la que se movió el mouse en una aplicación y usar ese dato para modificar algún parámetro. También, mediante algún tipo de procesamiento, se puede determinar la dirección a la que se movió el mouse.

Otra característica útil que se puede obtener del mouse es el estado de sus botones. Processing permite saber cuándo se apretó un botón directamente con la variable especial mousePressed. mousePressed es verdadera (true) cuando algún botón del mouse está apretado y false cuando no lo está. Si se desea diferenciar por el tipo de botón que se está apretando se utiliza la variable mouseButton, la cual puede ser LEFT, CENTER o RIGHT según el botón que se acciona.

Estas variables pueden ser utilizadas en conjunto o en solitario para filtrar las diferentes acciones del mouse.

2.10.2. Teclado

Otro dispositivo de entrada que puede utilizar Processing es el teclado de la computadora. En este caso se puede tomar la señal que genera cada una de las teclas para realizar una acción. Estas señales pueden ser diferentes según la letra o símbolo que se presiona y además se puede obtener información de si se está apretando o si ya se dejó de apretar una determinada tecla. Esto se realiza mediante las variables KeyPressed, que será true o false según se esté accionando o no una tecla y la variable key, que devolverá información de qué tecla se está apretando. Además, se cuenta con lo que se denomina coded key (teclas codificadas) que son las teclas ALT, CONTROL, SHIFT, UP, DOWN, LEFT y RIGHT.

Para saber si alguna de estas teclas es apretada se debe igualar la variable key con la palabra CODED, key = CODED será true si una de estas teclas se apretó, y false si no se hizo. Luego, para independizar cada letra se utiliza la sentencia KeyCode igualándola a ALT, CONTROL, SHIFT, UP, DOWN, LEFT y RIGHT. Cualquier otra tecla será reconocida por su valor alfanumérico.

Actividad 10

Revisar los siguientes ejemplos complementarios y combinar todos ellos para crear un solo programa que pueda ser controlado tanto por el mouse como por el teclado. De ser necesario, utilizar cualquiera de las funciones revisadas en esta Unidad.

Conclusión

En esta primera parte se revisaron los rudimentos básicos para el trabajo con Processing, lo que ayuda a entender y utilizar herramientas más complejas en el resto del material. Se recomienda revisar hasta entender todo el código de los diferentes programas que se estudiaron y también realizar variaciones de los mismos, para adquirir la experiencia necesaria en el uso del programa y poder avanzar sin inconvenientes con las siguientes unidades.