// Class Example: How to draw a 4 leaf clover // First we define, and test a petal() function // Next, we deine a flower() function that draws 4 petals. // Try varying the alpha values of color and changing N in flower() // Try changing the shape of the petal // Modify sketch so it draws a flower of random size // where mouse is clicked. // Can you modify the program so it spins??
void setup() { size(500, 500); background(255); noLoop(); } // setup()
void draw() {
fill(0, 158, 96); // This is Shamrock Green noStroke(); flower(width/2, height/2, 100);
} // draw()
void flower(int x, int y, int s) { // Draws a flower with N petals int N = 4; float theta = TWO_PI/N; pushMatrix(); translate(x, y); for (int i = 1; i <= N; i++) { rotate(theta); petal(0, 0, s/2, s/2); } popMatrix(); } // flower()
void petal(int x, int y, int w, int h) { // Draws a petal pushMatrix(); translate(x, y); beginShape(); // The petal curveVertex(0, 0); curveVertex(0, 0);
curveVertex(w/4, -h); curveVertex(w, -h/2); //curveVertex(0, 0);
curveVertex(0, 0); curveVertex(0, 0); endShape(CLOSE); popMatrix(); } // petal()