Processingでランダムに記号を描く
マウスをクリックすると4つの図形と非表示がランダムに切り替わります。
ellipseModeやrectModeを調整するのがちと大変かもですが、さほど難しくありません。
forの使い方をお勉強するのにいいかもしれません。
//グリッドのサイズ int gridSize = 60; //ランダムの値 int rd1; //繰り返し描画用 int i,j; void setup() { size(400,400); background(255); noLoop(); } void draw() { background(255); for(j = 0; j < height/gridSize+1; j++){ for (i = 0; i < width/gridSize+1; i++) { rd1 = int(random(5)); shapeParts(); /* グリッド線を引きたい場合は下記 noFill(); strokeWeight(1); stroke(0); rect(gridSize * i, gridSize * j, gridSize, gridSize); */ } } } void shapeParts() { switch(rd1) { case 0: ellipseMode(CORNER); noStroke(); fill(134,169,251); ellipse(gridSize * i, gridSize * j, gridSize, gridSize); break; case 1: ellipseMode(CORNER); noFill(); strokeWeight(2); stroke(134,169,251); ellipse(gridSize * i, gridSize * j, gridSize, gridSize); break; case 2: noStroke(); fill(134,169,251); rect(gridSize * i, gridSize * j, gridSize, gridSize); break; case 3: noFill(); strokeWeight(2); stroke(134,169,251); rect(gridSize * i, gridSize * j, gridSize, gridSize); break; case 4: noFill(); noStroke(); break; } } //マウスを押して再描画 void mousePressed() { redraw(); }