Exportar a diferentes formatos
Lo que creamos en Processing puede salir del lienzo en diferentes formatos descritos a continuación.
1 Mapa de bits (PNG)
La función save()
o saveFrame()
nos permiten guardar
1.1 Modo estático
En este modo, podemos concluir nuestro sketch con una de estas funciones, y exit()
:
size(500, 500);
background(0);
stroke(255);
ellipse( width/2, height/2, 100, 100);
save("imagen.png");
exit();
1.2 Modo dinámico
Al utilizar setup()
y draw()
, conviene utilizar algún mecanismo para solo guardar el cuadro de animación que queremos, y no toda la secuencia (ve abajo en Video para ver cómo conviene guardar toda la secuencia)
// guarda imagen al dar click en el lienzo
void setup(){
size( 500, 500 );
}void draw(){
// dibuja aquí
}
void mousePressed(){
// guarda un archivo donde #### se reemplaza por el número de frame
saveFrame("frame-####.png");
}
En ocasiones, en vez de querer utilizar el número de frame, conviene más guardar el archivo con la fecha y hora de captura. En esos casos, reemplazaríamos saveFrame()
con:
// guarda un archivo en formato captura-YYYYMMDD-HHmmss.png
save( String.format("captura-%04d%02d%02d-%02d%02d%02d.png", year(), month(), day(), hour(), minute(), second() ) );
2 Vectores (SVG)
Podemos exportar en .svg
para utilizar las figuras en software de dibujo con vectores, reemplazando la función size()
por una con más argumentos:
import processing.svg.*;
void setup() {
size(400, 400, SVG, "archivo.svg");
}
void draw() {
// dibuja
noFill();
ellipse(width/2, height/2, 150, 150);
ellipse(width/2, height/2, 50, 50);
// Termina y cierra el programa
exit();
}
Hay más formas de exportar en SVG que pueden verse en SVG Libraries Processing.org
3 Video
La forma para capturar video desde Processing consiste en primero exportar los cuadros (frames) de animación, y luego convertirlas a un video.
3.1 Exporta frames
Parecido a lo mostrado arriba para mapa de bits, pero aquí se guardan todas las frames. Toma en cuenta que este proceso puede alentar a tu sketch; la recomendación es que primero lo desarolles, y ya que esté listo entonces lo grabes.
El if()
que se incluye hace que solo se guarden las primeras 300 frames; lo puedes quitar o modificar si así lo deseas.
void setup(){
size(500, 500);
}
void draw(){
// dibuja aquí
// si estamos en las primeras 300 frames
if(frameCount <= 300 ){
// guarda frame
saveFrame("frames/frame-####.png");
} }
El formato .png
tarda más en guardarse pero las imágenes pesan menos. Si prefieres más rapidez al guardar, usa el formato .tif
o .tga
.
3.2 Convierte a video
Los cuadros de animación que exportaste, reproducidos a 60 frames por segundo, corresponderán a la velocidad de tu sketch.
Processing tiene una herramienta incluida para convertir un conjunto de imágenes exportadas de esta forma, a un video.
- Ve al menú Herramientas -> Creador de películas (Tools -> Movie Maker).
- Agrega tu carpeta de cuadros exportados en el formulario correspondiente.
- Configura los parámetros del video que desees: dimensiones e imágenes por segundo (60)
- Opcionalmente agrega algún archivo de sonido
- Crea el archivo de video, que será tipo
.mov
, escogiendo en dónde guardarlo
Nota que también puedes usar otras herramientas de video para ensamblar estos cuadros de animación.