ProcessingでGenerative art #68
Code
int Count = 7;
void setup() {
size(800, 800);
pixelDensity(2);
colorMode(HSB, 360, 100, 100, 100);
noLoop();
}
void draw() {
background(360);
divideRect(30, 30, width-60, Count);
}
void divideRect(float posX, float posY, float side, int n) {
float r = map(n, 0, Count, 0.9, 0.2);
stroke(360);
strokeWeight(3);
fill(random(180, 350), 90, 85);
side *= 0.5;
if (random(1) > 0.5)rect(posX, posY, side, side);
if (random(1) > 0.5)rect(posX + side, posY, side, side);
if (random(1) > 0.5)rect(posX, posY + side, side, side);
if (random(1) > 0.5)rect(posX + side, posY + side, side, side);
n--;
if (n > 0) {
if (random(1) > r) {
divideRect(posX, posY, side, n);
}
if (random(1) > r) {
divideRect(posX + side, posY, side, n);
}
if (random(1) > r) {
divideRect(posX, posY + side, side, n);
}
if (random(1) > r) {
divideRect(posX + side, posY + side, side, n);
}
}
}
void mousePressed() {
redraw();
}
void keyPressed(){
if(key == 's')saveFrame("####.png");
}
Happy Coding!
応援してくださる方!いつでもサポート受け付けてます!