Hoy presento un programilla que muestra triángulos de colores a lo caleidoscopio (que era la primera intención, pero de SDL se pasó a OpenGl y de texturas a triángulos y ya la armamos)[colorinchos.c].
El efecto es este (videobin mola :P) [ http://videobin.org/+1zv/2ac.html ]
Mostrando entradas con la etiqueta 2D. Mostrar todas las entradas
Mostrando entradas con la etiqueta 2D. Mostrar todas las entradas
jueves, 14 de octubre de 2010
martes, 7 de septiembre de 2010
Script para hacer animaciones con CFDG
Hoy traigo un script que genera automaticamente un conjunto de imágenes con CFDG [cfanim.pl].
Lo que hace es partir de un archivo de este programa, partiendo de un nivel de recursividad pequeño y avanzando, por ejemplo, partiendo del archivo:
startshape init
rule init{
spiral{sat 1 b 0.8}
}
rule spiral{
SQUARE{}
spiral{x 1 r 1 hue 1 s 0.999}
}
Se pueden obtener las imágenes desde el primer nivel de recursividad, hasta, digamos... el 300
./cfanim.pl base.cfdg -i 1 -f 300
Nota: Es importante no partir del 0, porque se utilizaría en esa imágen el nivel de recursividad normal, no el especificado.
Con ese comando obtendríamos 300 imágenes individiales, pero si además queremos juntarlas para convertirlas en un .gif, se haría:
./cfanim.pl base.cfdg -i 1 -f 300 -m animacion.gif
./cfanim.pl <archivo.cfdg> -i <figuras iniciales> -f <figuras finales> [-s <step>] [-m <output.gif> [-d <delay>]]
Lo que hace es partir de un archivo de este programa, partiendo de un nivel de recursividad pequeño y avanzando, por ejemplo, partiendo del archivo:
startshape init
rule init{
spiral{sat 1 b 0.8}
}
rule spiral{
SQUARE{}
spiral{x 1 r 1 hue 1 s 0.999}
}
Se pueden obtener las imágenes desde el primer nivel de recursividad, hasta, digamos... el 300
./cfanim.pl base.cfdg -i 1 -f 300
Nota: Es importante no partir del 0, porque se utilizaría en esa imágen el nivel de recursividad normal, no el especificado.
Con ese comando obtendríamos 300 imágenes individiales, pero si además queremos juntarlas para convertirlas en un .gif, se haría:
./cfanim.pl base.cfdg -i 1 -f 300 -m animacion.gif
La sintaxis del script es:
./cfanim.pl <archivo.cfdg> -i <figuras iniciales> -f <figuras finales> [-s <step>] [-m <output.gif> [-d <delay>]]
jueves, 5 de agosto de 2010
Un wallpaper nuevo cada día (con CFDG)
Trasteando con CFDG, por decirlo así, el "padre" en 2D de Structure Synth, y tras comprobar que tiene la misma capacidad que su versión en 3D de generar gráficos aleatorios "interesantes", y que el fondo de pantalla ya lleva un buen tiempo siendo el mismo, ¿que mejor que hacer que este lo genere un programa, haciendo que sea nuevo cada vez? :D
La idea es bastante simple, hacer un script que llame a CFDG sobre un código hecho antes cada vez que se quiera (que el usuario se loguee o cada cierto tiempo aprovechando cron).
El script en sí es bastante sencillo, algo así lo haría perfectamente
#!/usr/bin/env bash
wide=1280
high=800
cfdg back.cfdg -oback.png -w $wide -h $high &
Por supuesto, habría que cambiar wide por el ancho de la pantalla y high por su alto, para generar una imágen óptima.
El resto no es más dificil, hacer un archivo de CFDG, este por ejemplo genera espirales que parecen hechas con rotulador (¿?) , es grande para incluir más variaciones:
startshape init
rule init{
dot { saturation 1}
}
// Dot made
rule dot 0.01 {
SQUARE { }
dot { s 0.995 rotate 1 x 1 hue -1 }
}
rule dot {
SQUARE { }
dot { s 0.995 rotate -1 x 1 hue 1 }
}
rule dot 0.9 {
SQUARE { }
dot { s 1.005 rotate 1 x - 1}
}
/*// Comment this for removing color
rule init 1000{
dot { saturation 1 brightness 0.9 }
}
rule dot 0.01{
dot { brightness 0.90 }
}
rule dot 0.01{
dot { brightness 0 }
}
rule dot 0.01{
dot { brightness 0.4 }
}
rule dot 0.005{
dot { hue 180 }
}
//*/
(El /* se puede eliminar para tener algo de colorido, para gustos...)
Y la imagen resultante de ejecutar el script se utiliza de fondo de pantalla, el resultado podría ser algo así en este caso:
Aunque claro, la gracia está en el cambio. Cómo hacer que se ejecute el script es cosa de cada uno, la forma más facil en las distribuciones con gnome (para Xfce, KDE lo mismo) es a través de Sistema > Preferencias > Aplicaciones al inicio, aunque (como ya se dijo antés), cron puede ser una opción interesante para que se renueve incluso cuando no se hace logout.
Hasta otra.
ps: La instalación de CFDG no tiene ningún misterio, se descomprime, se hace make para compilar y sudo cp cfdg /usr/bin/ para instalar.
[Referencias]
CFDG HowTo
La idea es bastante simple, hacer un script que llame a CFDG sobre un código hecho antes cada vez que se quiera (que el usuario se loguee o cada cierto tiempo aprovechando cron).
El script en sí es bastante sencillo, algo así lo haría perfectamente
#!/usr/bin/env bash
wide=1280
high=800
cfdg back.cfdg -oback.png -w $wide -h $high &
Por supuesto, habría que cambiar wide por el ancho de la pantalla y high por su alto, para generar una imágen óptima.
El resto no es más dificil, hacer un archivo de CFDG, este por ejemplo genera espirales que parecen hechas con rotulador (¿?) , es grande para incluir más variaciones:
startshape init
rule init{
dot { saturation 1}
}
// Dot made
rule dot 0.01 {
SQUARE { }
dot { s 0.995 rotate 1 x 1 hue -1 }
}
rule dot {
SQUARE { }
dot { s 0.995 rotate -1 x 1 hue 1 }
}
rule dot 0.9 {
SQUARE { }
dot { s 1.005 rotate 1 x - 1}
}
/*// Comment this for removing color
rule init 1000{
dot { saturation 1 brightness 0.9 }
}
rule dot 0.01{
dot { brightness 0.90 }
}
rule dot 0.01{
dot { brightness 0 }
}
rule dot 0.01{
dot { brightness 0.4 }
}
rule dot 0.005{
dot { hue 180 }
}
//*/
(El /* se puede eliminar para tener algo de colorido, para gustos...)
Y la imagen resultante de ejecutar el script se utiliza de fondo de pantalla, el resultado podría ser algo así en este caso:
Aunque claro, la gracia está en el cambio. Cómo hacer que se ejecute el script es cosa de cada uno, la forma más facil en las distribuciones con gnome (para Xfce, KDE lo mismo) es a través de Sistema > Preferencias > Aplicaciones al inicio, aunque (como ya se dijo antés), cron puede ser una opción interesante para que se renueve incluso cuando no se hace logout.
Hasta otra.
ps: La instalación de CFDG no tiene ningún misterio, se descomprime, se hace make para compilar y sudo cp cfdg /usr/bin/ para instalar.
[Referencias]
CFDG HowTo
Suscribirse a:
Entradas (Atom)