Descripción del funcionamiento de código.

Simple Harmonic Motion

let angle=0;// se declara la variable angulo
let angleV = 0;//se declara la variable anguloV

//Funcion la cual su funcionalidad es determinar el espacio
//en el cual se graficara con scripts
function setup(){
    createCanvas(400400,);
}
//Funcion la cual debera realizar los dibujos
function draw(){
    background(0,10);
    translate(200,200);// aca se permite hacer que la figura se traslade entre los
    limites colocados
    fil(252,238,33);//cambia todos los elementoa a un arreglo por valores estaticos
    determinados ya en la funcion
    //let r= map(sin(angle), -1, 1, 0, 200);
    let y= map(sin(angle), -11-200200);// se declara una nueva variable la cual
    se le asigna un valor en forma de arreglo el cual se calcula con los parametros
    declarados
    stroke(255);//Se establece el color de las figras dibujadas
    line(00,0,y); //Se encarga de dibujar una linea en el eje y
    circle(0y32);//Se crea un circulo con los parametros asignados

    //let increment=TWO_PI /60;
    angle +=angleV;// Se ira incrementando el angulo

    angleV +=0.0001;//la velocidad con la que se ira incrementando el angulo
    //console.log(frameRate());
}

Fourier Series

//Se declaran variables globales
let time = 0;
let wave = [];

let slider;
//Funcion la cual permite dibujar el campo en el cual se graficara y tambien se crea
el slider para definir los parametros del periodo
function setup() {
  createCanvas(600400);
  slider = createSlider(1105);
}
/**
 Funcion la cual permite dibujar las circunferencias y las ondas conforme se aplica la
 formula respectiva, la cual va tomando los valores a evaluar
 deacuerdo al slider ya que dependiendo del valor del slider se asignaran los demas 
 valores a las variables necesarias.
 **/
function draw() {
  background(0);
  translate(150200); //Posición en la que se comenzará a dibujar en pantalla

  let x = 0;
  let y = 0;

  //Ciclo 
  for (let i = 0i < slider.value(); i++) {
    let prevx = x;
    let prevy = y;

    let n = i * 2 + 1;
    let radius = 75 * (4 / (n * PI));//Variable en la que se determina la amplitud de
    la onda
    x += radius * cos(n * time);
    y += radius * sin(n * time);

    stroke(255100);
    noFill();
    ellipse(prevxprevyradius * 2);//Función para dibujar las circunferencias

    //fill(255);
    stroke(255);
    line(prevxprevyxy); //Linea que recorre la circunferencia
    //ellipse(x, y, 8);
  }
  wave.unshift(y);//Almacena la nueva posición en y para dibujar.

  translate(2000);
  line(x - 200y0wave[0]);
  beginShape();//Metodo para que no se dibuje la sombra del dibujo
  noFill();

  //Ciclo que en cada iteración dibuja el rastro de la onda
  for (let i = 0i < wave.length; i++) {
    vertex(iwave[i]);
  }
  endShape();

  time += 0.05;

  //Condición para eliminar elementos del arreglo en el caso de que excedan 250
  if (wave.length > 250) {
    wave.pop();
  }
}


Colaboradores:

  • Jaime Barbosa González
  • Rodrigo García Hernández
  • David Limón Aguilar 
  • Luis Angel Marin Coheto



Comentarios

Entradas más populares de este blog

Cuadro comparativo entre: multiplexación, TDM, FDM y WDM

Multiplexación por división de tiempo (TDM)

Como funciona la conversión de Digital a Analógica