Bolas que reboten cuando se chocan: transfiriéndose toda la energia

float x1, y1, dx1, dy1;

float x2, y2, dx2, dy2;

float r = 30;


void setup() {

  size(600, 400);

  frameRate(500);


  x1 = random(60,500);

  y1 = random(60,300);

  x2 = random(60,500);

  y2 = random(60,300);


  dx1 = random(-1,1);

  dy1 = random(-1,1);

  dx2 = random(-1,1);

  dy2 = random(-1,1);

}


void draw() {

  background(220);

  ellipse(x1, y1, r*2, r*2);

  ellipse(x2, y2, r*2, r*2);


  x1 = x1 + dx1;

  y1 = y1 + dy1;

  x2 = x2 + dx2;

  y2 = y2 + dy2;


 if (x1-r < 0) {

    dx1 = -1*dx1;

  }


  if (x1+r > width) {

    dx1 = -1*dx1;


  }

  if (y1-r < 0) {

    dy1 = -1*dy1;

  }


  if (y1+r > height) {

    dy1 = -1*dy1;

  }


  


  if (x2-r < 0) {


    dx2 = -1*dx2;


  }


  if (x2+r > width) {


    dx2 = -1*dx2;


  }


  if (y2-r < 0) {


    dy2 = -1*dy2;


  }


  if (y2+r > height) {


    dy2 = -1*dy2;


  }


  


float d = dist(x1, y1, x2, y2);

if (d <= r*2) {

  float tx = dx1;

  float ty = dy1;

  dx1 = dx2;

  dy1 = dy2;

  dx2 = tx;

  dy2 = ty;

  }

}


Comentarios

Entradas populares de este blog

Medidas de Seguridad

PYTHON: bolas que cuando choquen se pare el programa