1. Archivos de imagen con programación en Lua
La clase of.Image()
de openFrameworks permite incorporar fácilmente archivos de imagen a la ventana de salida. Al cargar el archivo se asigna automáticamente un objeto of.Pixels()
y crea una textura de openGL con of.Texture()
para mostrar los pixels de la imagen. Los archivos de imagen deben estar guardados en la carpeta data junto al archivo del script en Mosaic (o en la carpeta data que hay junto al archivo de Lua en OFlua). Se pueden incorporar archivos de imagen del tipo jpg, gif, tga, tiff, bmp y png.
Para cargar y mostrar la imagen, se vincula la clase of.Image()
a una variable global.
Después, en el bloque function setup()
, se carga el archivo con el método load()
, vinculado al nombre de la variable por medio del operador «:», dentro de los paréntesis del método load se utiliza la variable de sistema SCRIPT_PATH
que obtiene la ruta de la carpeta en la que está guardado el archivo de lua, tras ello «..» para concatenar con la ruta en la que está el archivo buscado, por ejemplo, imag:load(SCRIPT_PATH .. "/data/nombreArchivo.jpg")
, para importar la imagen desde una carpeta data que está al lado del archivo de lua, o imag:load(SCRIPT_PATH .. "/nombreArchivo.jpg")
cuando el archivo de lua está junto al de la imagen.
Por último, en el bloque function draw()
se vincula la variable al método draw()
cuyos 4 parámetros señalan la posición x, y, más el ancho y alto de la imagen. En el siguiente ejemplo se establece una fórmula para escalar el tamaño de la imagen a las dimensiones de la ventana de salida, utilizando los métodos getWidth()
y getHeight()
que devuelven el ancho y alto de la imagen. Para conocer todos los métodos de la clase of.Image()
ver su documentación en openFrameworks