Dibujar una onda con point() y sin()

Se trata de dibujar una onda mediante las distintas posiciones de un punto

//Definimos una variable n que nos ayudará a dibujar la onda
float n = 0;
//y otra x para hacer que el punto avance de izquierda a derecha
float x = 0;
 
void setup(){
  size(659,100);
  background(#336699);
  stroke(255);
}
 
void draw(){
  //esta es la clave
  point(x, height/2 + sin(n) * 40);
  n = n + 0.05;
  x = x + 1;
}

Para entender qué ocurre aquí debemos conocer el concepto de seno (sin()). El seno de un ángulo  es la relación, en un triángulo equilátero, entre el cateto opuesto a dicho ángulo y la hipotenusa. El dato importante aquí es que el valor del seno de un ángulo oscila entre -1 y 1.

Aquí n representa el valor del ángulo, que va aumentando lentamente (-0.05 cada ciclo) para que el movimiento del punto sea fluido.

Documentación

Leave a Comment.