domingo, 15 de febrero de 2015

Claroscuro multicolor

(es) Claroscuro multicolor

(eo) Multkolora helmalhelaĵo

Claroscuro multicolor

http://dx.doi.org/10.13140/RG.2.2.34092.90243

Descripción artística:

Una serie de cuadrados con cambio de color en el tinte en el eje X, y brillo y saturación en el eje Y.

Motivación:

Fue uno de los primeros experimentos del autor con el lenguaje CFDG.

Descripción técnica:

Cada fila y cada columna de cuadros rota 90 grados de un extremo al otro. Aunque pueda parecer lo contrario, los centros de todos los cuadrados forman una cuadrícula perfecta.
Desde arriba, los cuadros tienen un brillo constante (máximo) pero una saturación incremental. Al llegar al centro hay un cambio y los cuadros tienen una saturación constante (máxima) pero un brillo decreciente.

Archivos

Código (CFDG):

# Copyright 2015 Eduardo Adam Navas López
# Este archivo es Software Libre liberado bajo la licencia GNU GPLv3 o su versión más reciente:
# http://www.gnu.org/licenses/gpl.html

#Para generar la imagen:
#$ cfdg -b 0 -s 8000 hsb.cfdg hsb.png

startshape cuadros

#Va aumentando la saturación con un brillo constante (máximo=1) y luego va disminuyendo el brillo con una saturación constante (máximo=1), de manera consecutiva
shape cuadros{
 numCols = 20 #Número de las filas/columnas
 ang = 90 #Ángulo de giro en cada fila/columna
 minSat = 0.2 #Límite inferior de la saturación [0,1)
 minBrillo = 0.2 #Límite inferior del brillo [0,1)
 d = sqrt(2)
 loop j=(numCols/2) [y (-d)]{
  loop i=(numCols) [x d] {
   SQUARE[b 1
   r (i*ang/(numCols-1)+j*ang/(numCols-1)) 
   h (i*359/numCols) 
   sat (minSat+j*(1-minSat)/(numCols/2-1))]
  }
 }
 loop j=(numCols/2) [y (-d)]{
  loop i=(numCols) [x d] {
   SQUARE[sat 1 
   r (i*ang/(numCols-1)+j*ang/(numCols-1)+45) 
   h (i*359/numCols) 
   b (1+j*(minBrillo-1)/(numCols/2-1)) y -(d*numCols/2)]
  }
 }
}

No hay comentarios:

Publicar un comentario