Bauhaus Formen
float seg = 0; //Segmentzähler
void setup() {
size(800, 800); smooth(); noStroke();
}
void draw() {
background(0); fill(255,255,0); maleSegmente(100,200,200,0,90); fill(255,0,0); maleSegmente(100,200,400,1,45); fill(0,0,255); maleSegmente(80,200,600,40,90);
}
void maleSegmente(int r,float x,float y, float s, float g) {
float segmente = 0; segmente = 3 + seg + s; float angleStep = 360/segmente;
beginShape(); vertex(x, y); for (float angle=0; angle<=360; angle+=angleStep) { float vx = x + cos(radians(angle-g))*r; float vy = y + sin(radians(angle-g))*r; vertex(vx, vy); } vertex(x + cos(radians(360-g))*r, y + sin(radians(360-g))*r); endShape();
}
void keyReleased() {
if (key == CODED) { if (keyCode == UP) { seg += 1; } else if (keyCode == DOWN) { if (seg >= 1) { seg -= 1; } } }
}