Objekter i Bevægelse

Fra Holstebro HTX Wiki
Skift til: navigering, søgning
Programmets visning af bevægelse

Eksemplet her tager udgangspunkt i frameRate()[1].

Princippet der udnyttes i denne bevægelse, er at der er en fast frameRate, så skærmen opdateres 60 gange i sekundet.

Hver gang skærmen opdateres flyttes X- og Y-positionen med et bestemt step for både X og Y, så objektet flytter sig i en bestemt retning.

Hvis objektet når grænsen af skærmen, så ændres step-værdien fra positiv til negativ eller fra negativ til positiv. På den måde holdes objektet hele tiden inden for skærmens område.

int posX = 10;
int stepX = 3;
int posY = 10;
int stepY = 5;

void setup() {
  size(400, 200);
  frameRate(60);
}

void draw() {
  background(0);
  fill(255);
  ellipse(posX, posY, 20, 20);
  posX += stepX;
  if (posX < 10 || posX > width - 10) {
    stepX *= -1;
  }
  posY += stepY;
  if (posY < 10 || posY > height - 10) {
    stepY *= -1;
  }
}

Referencer

  1. frameRate() på Processing.org