スクリーンショット_2019-10-10_18

築30年の家の洗面台の床のタイル

亀の歩み#3
亀の歩みと称して、ジェネラティブアートの練習を投稿しているのですが、今回は「築30年の家の洗面台の床のタイル」が出来ました。

スクリーンショット 2019-10-10 18.30.38

これに関しては完全に自作というよりはGENERATIVE DESIGNのP_2_2_1_01の色に工夫を加えただけなので、コードの独創性はないのですが、元々以下のような出力結果になることを考えると色の違いが作品の印象に与える影響は大きいですね。

元々の作品はよく言えば「墨汁のシミを拡大して見た」といった感じですが、悪く言えば「カビ」ですね。

上の例が清潔に見える一方で、下の例が不潔に見えるのが面白い!

スクリーンショット 2019-10-10 18.07.41

ソースコード

int NORTH = 0;
int NORTHEAST =1;
int EAST = 2;
int SOUTHEAST = 3;
int SOUTH = 4;
int SOUTHWEST = 5;
int WEST = 6;
int NORTHWEST = 7;
int stepSize = 1;
int diameter=1;
int posX = 0;
int posY = 0;
void setup() {
 size(720, 720);
 background(255);
 smooth();
 noStroke();
}
void draw() {
 for (int i=0; i<=mouseX; i++) {
   int direction = (int) random(0, 8);
   
   if (direction == NORTH) {
     posY -= stepSize;
     fill(218+random(3), 204+random(3), 229, 40);
   }
   if (direction == NORTHEAST) {
     posY -= stepSize;
     posX += stepSize;
     fill(225+random(3), 204+random(3), 226, 40);
   }
   if (direction == EAST) {
     posX += stepSize;
     fill(225+random(3), 204+random(3), 226, 40);
   }
   if (direction == SOUTHEAST) {
     posY += stepSize;
     posX += stepSize;
     fill(225+random(3), 204+random(3), 226, 40);
   }
   if (direction == SOUTH) {
     posY += stepSize;
     fill(255+random(3), 240+random(3), 245, 40);
   }
   if (direction == SOUTHWEST) {
     posY += stepSize;
     posX -= stepSize;
     fill(255+random(3), 240+random(3), 245, 40);
   }
   if (direction == WEST) {
     posX -= stepSize;
     fill(203+random(3), 201+random(3), 216, 40);
   }
   if (direction == NORTHWEST) {
     posY -= stepSize;
     posX -= stepSize;
     fill(218+random(3), 204+random(3), 229, 40);
   }
   
   if (posX>width) posX = 0;
   if (posX<0) posX = width;
   if (posY<0) posY = height;
   if (posY>height) posY =0;
  
   ellipse(posX+stepSize/2, posY+stepSize, diameter, diameter);
 }
}

この記事が気に入ったらサポートをしてみませんか?