Ejercicios Processing y #12

Bueno, ya lo último, la sesión nº 11 del día 7 de abril, clase impartida por Carlos Bañón. Sólo tengo dos sketches y son los que os cuelgo, como siempre, para descargar aquí.

  • Ejercicio E30: Interesante sketch que analiza y redibuja una imagen raster mediante caracteres del código ASCII en función del brillo (brightness) de los píxeles o grupos de píxeles determinados por los valores de resolución indicados (ampliación del capítulo dedicado al tratamiento de imágenes, sesiones nº4 y 10).
  • Ejercicio E31: Este otro sketch genera un grupo de partículas (círculos) con valores aleatorios y que podemos desplazar e impulsar con el botón izquierdo del ratón y unir entre ellas mediante líneas con el botón derecho. Pulsando la letra ‘g’ caen hacia el suelo atraídos por la gravedad  (ampliación del capítulo dedicado a la programación orientada a objetos, que conocemos como classes, sesiones nº5 y 6 ).

Como despedida, pues deciros que me ha gustado mucho el curso y espero que a vosotros os haya servido de algo. Gracias por vuestra asistencia, que sé que os ha costado esfuerzo por todo lo que lleváis encima y por lo tardío del horario. Quizá el año que viene volvamos a la carga si los chicos del LAC se deciden a continuar o a ampliar esta experiencia de las Estrategias Digitales en Arquitectura. Si tenéis alguna duda o consulta (razonable) me escribís un correo a mi dirección, que podéis encontrar en la página web de adhoc, y en la medida de lo posible os aconsejaré o ayudaré. Otra opción interesante es que compartáis vuestros incipientes conocimientos con los compañeros, que dos cerebros piensan mejor que uno solo.

Un saludo a todos y hasta siempre.  //  Álvaro

Curso SIG #2

Hola, hoy martes 28 de abril tenemos la segunda sesión del curso de SIG, y vamos a hacer análisis demográficos, evolución de la población y distribución territorial de la misma, basada en la edición y relación de bases de datos. Para ello nos va a hacer falta una información que ya hemos dejado en la ftp (para descargarla haced clic aqui).

Estos datos son necesarios para poder seguir los ejercicios durante la clase con vuestros propios ordenadores, así que es fundamental que la tengáis descargada.

Un saludo, Fulgen y Juana.

Curso SIG #1

Hola a todos. Mañana día 21 de abril comienza el curso de SIG (Sistemas de Información Geográfica), que cierra el curso de “Estrategias Digitales en Arquitectura” del CECLEC del Laboratorio de Arquitectura y Computación de este año. Tenemos 5 sesiones, que acabarán el martes 19 de mayo.

Como el tiempo es muy limitado, es importante que todos los asistentes tengáis ya convenientemente instalado el programa en vuestros ordenadores y que acudáis con ellos al aula.

Para la primera sesión hemos colocado en un servidor ftp un paquete de datos que usaremos en los ejemplos que veremos en clase. Podéis pincharaquí para descargar el archivo RAR, y una vez hecho descomprimidlo en una carpeta y tenedlo preparado para mañana. Dentro del RAR también hemos incluido un pequeño manual en PDF.

Un saludo a todos // Juana & Fulgen

Ejercicios Processing #11

De regalo, y mientras resuelvo lo de la sesión nº11, os dejo unos ‘downloaders’ inspirados en lo que se ve por ahí. Un downloader es el típico icono móvil que aparece dando vueltecitas mientras se carga una página o lo que sea. He creado algunos circulares y algunos lineales. Llevan pocos comentarios, pero dados vuestros avanzados conocimientos de processing podréis analizarlos sin muchos problemas. El RAR con los sketches se llama Dia13(contadores) y podéis acceder a él pinchando aquí.

Comentarios a los ejercicios:

  • Contadores circulares: Tenemos tres ejemplos, copiados de macintosh, youtube y nero (el programa de copiar CDs). El más sencillo es el de nero (versión 8), que no usa classes ni nada por el estilo; es un arco de color rojo que va recorriendo un círculo de color gris oscuro. El de macintosh consiste en unas líneas radiales de color gris que se van dibujando en negro por turnos según avanza el tiempo. El de youtube son circulitos rellenos de grises de distinta intensidad. Estos dos últimos se basan en el uso de classes (programación orientada a objetos).
  • Contadores lineales: El ejemplo que se llama Contador_Lineal consiste en una colección de cuadritos de color que se van dibujando de izquierda a derecha hasta formar una tira completa; al llegar al final la tira se vacía y vuelven a empezar. El otro ejemplo se llama Contador_Amortiguado y es un estudio para crear una tira que va y viene de izquierda a derecha, rebotando en los extremos y produciendo un amortiguamiento al acercarse y alejarse de ellos; se basa en el uso de la función coseno. Está sin terminar, y sería un ejercicio interesante para vosotros completarlo con más cuadritos que vayan siguiendo al principal.

En realidad los preparé para verlos durante el curso, pero no encontré el hueco para colarlos. Echadles un vistacillo, pueden ser interesantes. 

Saludos // Álvaro

Ejercicios Processing #10

Hola de nuevo. En el RAR de la sesión del día 12 (sesión inexistente) os he puesto como complemento al curso unos ejercicios de 3D donde se pueden mover los objetos y/o la cámara usando el ratón. Esto no lo hemos visto en clase, pero os los dejo ahí como semilla para intentar comprender los mecanismos del trabajo en 3 dimensiones.

Para operar en un entorno 3D hay dos maneras de actuar, y las dos se establecen en la función size(), dentro del setup():

  • definiendo size(ancho, alto, P3D) nos permite hacer uso de las funciones 3D, pero con una resolución muy baja, aunque con un buen rendimiento (velocidad de proceso). No es necesario cargar ninguna librería.
  • definiendo size(ancho, alto, OPENGL) nos permite las mismas funcionalidades pero con una buena resolución, a costa de sacrificar la velocidad (si el sketch es muy complejo). Para usar el opengl hay que cargar previamente la librería opengl correspondiente (se puede hacer en el menú Sketch > Import library > opengl)

Los ejemplos contenidos en el RAR, que podéis descargar aquí, os los describo a continuación:

  • Ejercicio P3D_Basico: Cámara fija y objetos móviles. Tres pares esfera-caja giran haciendo clic con el botón izquierdo del ratón y moviéndolo en el eje X. Cada uno de los tres pares gira en torno a uno de los tres ejes espaciales X-Y-Z. Con el botón derecho restauramos la posición inicial. Pulsando la tecla ‘w’ conmutamos entre modo alámbrico y modo sólido. El texto en la parte inferior izquierda nos indica el valor actual del ángulo de rotación.
  • Ejercicio P3D_Matriz: Cámara fija y matriz de objetos móviles. En el espacio 3D hay una matriz de 3x3x3 esferas que giran lentamente sobre su eje Y. Haciendo clic con el ratón movemos el conjunto produciendo un giro en torno a los ejes X e Y. En la class ‘Caja’, en el método ‘display’, se puede cambiar la esfera por un box.
  • Ejercicio P3D_Camara: Cámara móvil y objeto móvil. Tres ejes espaciales de coordenadas X-Y-Z se representan con los colores R-G-B. Pulsando el botón central del mouse hacemos rotar la cámara en torno al origen de coordenadas. Con el botón izquierdo movemos el cubo en el plano X-Y. Con el botón derecho restauramos el cubo a las coordenadas 0,0. En esto ejemplo también está activada la iluminación y hay una luz direccional. Unos textos informativos en pantalla nos dan información sobre ángulos de giro y coordenadas, así como una mini-ayuda.

Espero que os sirva de motivación para investigar un poco. Ya sólo me queda por subiros al sitio de descargas los ejemplos que vimos en la última sesión, la número 11, el día 7 de abril. Estoy a la espera de que Carlos Bañón me pase los sketches para ‘arreglarlos’ un poco y simplificar su comprensión. En cuanto tenga esto resuelto lo subo.

Hasta luego  //  Álvaro

Ejercicios Processing #9

Ya están TODOS los ejercicios del pasado día 31 de marzo, sesión nº10, dedicados al tratamiento de imágenes con processing. Como siempre, podéis descargar el RAR haciendo clic aquí.

  • Ejercicio E23: Uso de la función tint() para aplicar transparencia a una imagen. Consultad el capítulo ‘Image 1’, página 95.
  • Ejercicio E24: Creación de animaciones a partir de imágenes. Al ser muchas fotos las que hay que procesar lo más conveniente es guardarlas en un array de imágenes para facilitar la tarea. Interesante uso de la función frameRate(), de la constante frameCount y del operador % (módulo). Más ejemplos en el capítulo ‘Image 2’, página 315.
  • Ejercicio E25: Uso de la función get() para obtener información de un píxel determinado. En este ejemplo se ‘pixeliza’ una imagen y se redibuja mediante rectángulos o círculos. Es interactivo. Leeros el capítulo ‘Image 3’, en la página 321.
  • Ejercicios E26 (a y b): Empleo de la función filter() con un par de tipos de filtros (THRESHOLD y POSTERIZE). Las funciones blend() y copy() no las hemos estudiado en clase, pero podéis mirarlas vosotros. Más información en el capítulo ‘Image4’, página 347.
  • Ejercicio E27: Empleo de la función mask(), también correspondiente al capítulo ‘Image 4’. En una máscara, el color blanco es opaco y el negro transparente, y los grises intermedios son semitransparentes.
  • Ejercicio E28: Semejante al E27, pero la máscara se crea mediante una pantalla virtual PGraphics, útil herramienta para dibujar en segundo plano. En este caso el archivo jpg con la máscara no existe, sino que se crea virtualmente.
  • Ejercicio E29: Ejemplo de ‘pixelizado’ realizando un análisis de píxeles adyacentes para obtener un color final para el píxel. Dicho análisis se denomina “convolution” y está descrito en el capítulo Image 5, en las páginas 360 a 363. El sketch es interactivo y tiene una pantalla de ayuda pulsando la tecla H. Podéis cargar otras imágenes para ver cómo se comportan. En la carpeta ‘data’ hay dos.

Álvaro