【p5js/プログラミング】交互。

Art

こんにちは、たやち(tayati369)です。

p5.jsでコーディングしています。
PCD@Tokyoさんの「デイリーコーディングチャレンジ」!!に素人極まりない私も参加しております。
毎日できるかわからないけれど、リモートワークのこのご時世、通勤分の時間があるでチャレンジしていきます。(デイリーとはw)

10日目のテーマは「交互」。

ついにデイリーコーディングも10日目に突入。自分が、ちゃんと続けていることに少し驚いています。今回のテーマでは、紺色と橙色のボールを交互に移動させる簡単なものを作成しました。
紺色と橙色は私が好きな色なので、愛でている感覚。笑

では、ごらんあれ〜。

const w = 100;
var x;
var pVec;
var vVec;
var num = 5;
var balls = [];


function setup(){
  createCanvas(500 ,500);
  frameRate(30);
  for (var i = 0; i <= num; i++) {
    if (i%2 == 0) {
      x = 0;
    }else {
      x = width;
    }
    pVec = new createVector(x,random(0,height));
    vVec = new createVector(10,0);
    balls[i] = new Ball(pVec, vVec, w);
  }
}

function draw(){
  background(255);
  for (var i = 0; i < num; i++) {
    if (i % 2 == 0) {
      fill(getCol());
    }else {
      fill('#FF6600');
    }
    balls[i].show();
  }
}


class Ball {
  constructor(_pVec, _vVec, _w){
    noStroke();
    this.pVec = _pVec;
    this.vVec = _vVec;
    this.w = _w;
    this.c = getCol();
    // fill(this.c);
  }
  show(){
    this.pVec.add(this.vVec);
    circle(this.pVec.x, this.pVec.y, this.w);
    if (this.pVec.x < 0 || this.pVec.x > width ) {
      this.vVec.x = this.vVec.x * -1;
    }else {
    }
  }
}

function getCol(){
    col = color('#000066');
  return col;
}

ではでは、さようなら〜〜〜。

なにかあればTwitterまで。

コメント