Codigos

//comenzamos con la variable angulo

//se agrega una matriz (vacia)

let time = 0;

let wave = [];

let slider;

function setup() {

  createCanvas(600, 400);

  slider = createSlider(1, 50, 5);

}

function draw() {

  background(0);

//150 px para arriba y 200 para abajo

  translate(150, 200);

  let x = 0;

  let y = 0;

//lo que se necesita es iniciar con x y y en 0

//se inicia un bucle

  for (let i = 0; i < slider.value(); i++) {

// Descirpcion de las variables a utilizar en fourier

    let prevx = x;

    let prevy = y;

    let n = i * 2 + 1;

//se crea el radio

//x sea igual al radio, multiplicado por el cos

//4 dividio por pi, n veces coseno

    let radius = 75 * (4 / (n * PI));

    x += radius * cos(n * time);

//el radio es multiplicado por el seno de el tiempo

 y += radius * sin(n * time);

//este es el circulo

    stroke(255, 100);

    noFill();

//se espera el diametro y el radio a la mitad

    ellipse(prevx, prevy, radius * 2);

//nuevamente se pone en color blanco

    stroke(255);

//se dibuja la linea desde 0, 0 ax, y.

    line(prevx, prevy, x, y);

//se crea un circulo mas pequeño

    ellipse(x, y, 8);

    }

//se va a guardar ese valor 

  wave.unshift(y);

//se traduce a 200px

  translate(200, 0);

//para trazar una linea

  line(x - 200, y, 0, wave[0]);

//el begin y el end sirven Para unir todos los componentes

//aqui se marcara el rastro

  beginShape();

  noFill();

//se deja x ya que no se usara

//i = 0, i es menor que la longitud de onda

  for (let i = 0; i < wave.length; i++) {

//se dibuja un punto en i, en la ola y en el índice     

vertex(i, wave[i]);

  }

  endShape();

  time += 0.05;

//sentencia donde llega a la línea ya que se sumaran los puntos

//finalizando esto, se repetira el proceso

  if (wave.length > 250) {

    wave.pop();

  }

}





Comentarios

Entradas más populares de este blog

Física y su aporte en las Telecomunicaciones

1.3.1 Analógicas, digitales, eléctricas y ópticas

Aplicaciones de los números complejos