array_PVector_ellipse01

int num = 50;

PVector[] pos;
PVector[] vel;

void setup() {
  size(500, 500);
  colorMode(HSB, 360, 100, 100);
  smooth();
  noStroke();

  pos = new PVector[num];
  vel = new PVector[num];


  for (int i = 0; i < num; i ++) {
    pos[i] =  new PVector(i*10, 0);
  }

  for (int i = 0; i < num; i ++) {
    vel[i] =  new PVector(0, i*0.1);
  }
}

void draw() {
  fill(0, 0, 100);
  rect(0, 0, width, height);

  for (int i = 0; i < num; i ++) {
    pos[i].add(vel[i]);

    fill(80, 80, 80);
    ellipse(pos[i].x, pos[i].y, 20, 20);

    if (pos[i].y < 0 || pos[i].y > height) {
      vel[i].y = - vel[i].y;
    }
  }
}

PVectorで配列を使ってみようと書き始めたけれど,どツボにはまる.全くできない.わからない.PVector自体を配列にできることをしらなくて,PVectorの値を配列に入れようとしていたのが,一番の敗因.「配列 PVector」で検索して,一番上にあったこのサイトを見てみたら,PVector[ ]と書いてもいいんだということがわかって,そこから書き直す.やっと思っていたようなことができた.ここまで約1時間.疲れた.

参考サイト

tercel-sakuragaoka.blogspot.jp