まゆたまガジェット開発逆引き辞典

電子工作やプログラミングのHowtoを逆引き形式で掲載しています。作りたいモノを決めて学んでいくスタイル。プログラマではないので、コードの汚さはお許しを。参照していないものに関しては、コピペ改変まったく問いません

processingで同じ範囲の乱数を複数パターン生成する

0から10までの乱数が欲しいけど、変数を同じにすると同じパターンになっちゃう・・・というときの解決策です。
同じ範囲の乱数を複数パターン生成しています。

下記の場合、0と1の乱数を10パターン作っています。重複はしていますが、変化のパターンは異なります。

//ランダム配列用
 int[] col1 = new int[10];
//色の配列
color[] colarray1 = 
{ 
#abcf2d,#5fb734
};



void setup() {
  size(600,600);
  noLoop();
 
}

void draw() {
  background(255);
  randomGe();
  //配列の最初のパターン(0か1か)で色の配列(colarray1)から色を取り出す
 fill(colarray1[col1[0]]);
  ellipse(100,50,20,20);
    //配列の2つ目のパターン(0か1か)で色の配列(colarray1)から色を取り出す
  fill(colarray1[col1[1]]);
  ellipse(200,50,20,20);
}

void randomGe() {
 
for(int i = 0; i < col1.length; i++){
  //乱数生成
  col1[i] = int(random(2));
}
}

void mousePressed() {
      redraw();// ボタンが押されたときだけ実行
}