Noise Wave en Processing
Este es el código de la visualización
float yoff = 0.0;
void setup() {
size(640, 360);
}
void draw() {
background(51);
fill(255);
beginShape();
float xoff = 0;
// Iterate over horizontal pixels
for (float x = 0; x <= width; x += 10) {
// Calculate a y value according to noise, map to
float y = map(noise(xoff, yoff), 0, 1, 200,300); // Option #1: 2D Noise
// Set the vertex
vertex(x, y);
// Increment x dimension for noise
xoff += 0.05;
}
// increment y dimension for noise
yoff += 0.01;
vertex(width, height);
vertex(0, height);
endShape(CLOSE);
}
Bueno como podemos ver en primera instancia se tiene un método de setup() que nos proporciona el tamaño de la visualización dandole en la instuccion size() el ancho y alto de la ventana.Posteriormente vemos que empieza un nuevo método llamado draw() con el cual se dibujara la figura que deseamos. Acá encontramos 2 instrucciones básicas que son background() y fill() las cuales colorean el fondo y la figura respectivamente. Una vez declarados los colores empiezan el trabajo principal de la visualización encerrado entre las instrucciones beginShape() y endShape(CLOSE).
Como se vio al comienzo se tienen 2 variables principales yoff y xoff. En un ciclo, por cada x empezando desde 0 hasta el ancho de la ventana y con incrementos de 10, se calcula una posición y que sera el mapeando de una función de ruido como valor principal. Esta función de ruido genera una serie de números aleatorios mas natural y armoniosa en las coordenadas dadas por yoff y xoff; una vez calculado el y se procede a colocar el vértice en la posición (x,y) y se incrementa el valor tanto de xoff como de yoff.
Que sucede si cambiamos el delta de xoff y el delta de yoff? al modificar el delta de xoff veremos mas picos en la vizualizacion mientras que si cambiamos el delta de yoff la onda tendrá un movimiento mas rápido; esto se debe a que los cambios serán mas continuos. A continuación veremos que pasa si con el delta de xoff y con el delta de yoff si se incrementa.


Comentarios
Publicar un comentario