Your browser does not support the canvas tag.

previous        Show / Hide Source        Download        next
//Girl watching sunrise
//Emily Bendevis
//991405877

void setup() {
  //set window colour to sky blue
  size(400, 400);

}

void draw(){

  background(165-(pmouseY/4),135-(pmouseY/4),255-(pmouseY/4));
  noStroke();
  
   //draw first outer circle of sun
  fill(255-(pmouseY/4),135-(pmouseY/4),165-(pmouseY/4));
  ellipse(140,80+pmouseY/2,320,320);
  
  //draw second outer circle of sun
  fill(255-(pmouseY/4),170-(pmouseY/4),135-(pmouseY/4));
  ellipse(140,80+pmouseY/2,260,260);
  
  //draw sun
  fill(255-pmouseY/4, 225-pmouseY/4,110-pmouseY/4);
  ellipse(140,80+pmouseY/2,80,80);

  //create a dark blue ocean
  fill(60-pmouseY/4, 120-pmouseY/4, 200-pmouseY/4);
  rect(0, 260, 400, 60);
  
  //group ellipses together to create illusion of clouds
  fill(255-pmouseY/4,255-pmouseY/4,255-pmouseY/4);
  ellipse(250+pmouseX/6,70,60,20);
  ellipse(290+pmouseX/6,80,60,20);
  ellipse(260+pmouseX/6,90,60,30);
  ellipse(220+pmouseX/6,80,70,20);
  ellipse(300+pmouseX/6,90,40,20);

  //create light reflection by horizon
  fill(210, 230, 255);
  rect(0, 260, 400, 5);

  //create additional reflection on water
  rectMode(CORNERS);
  rect(80, 265, 200, 270, 10);
  rect(90, 270, 190, 275, 10);
  rect(85, 275, 195, 280, 10);
  rect(100, 280, 180, 285, 10);
  rect(95, 285, 185, 290, 10);
  rect(105, 290, 175, 295, 10);
  rect(115, 295, 165, 300, 10);

  rectMode(CORNER);
  //create illusion of wet sand on shore
  fill(170-pmouseY/4, 150-pmouseY/4, 125-pmouseY/4);
  rect(0, 320, 400, 20);

  //create dry sand
  fill(230-pmouseY/4, 200-pmouseY/4, 170-pmouseY/4);
  rect(0, 340, 400, 60);

  //create girl's left then right thighs
  fill(255, 230, 220);
  triangle(260, 240, 280, 240, 270, 300);
  triangle(280, 240, 300, 240, 290, 300);

  //create girl's left then right knees
  triangle(270, 280, 275, 310, 265, 310);
  triangle(290, 280, 295, 310, 285, 310);

  //complete girl's left then right calves
  triangle(265, 310, 275, 310, 270, 360);
  triangle(285, 310, 295, 310, 290, 360);

  //draw girl's left then right feet
  triangle(250, 360, 275, 360, 270, 350);
  triangle(270, 360, 295, 360, 290, 350);

  //draw girl's left then right upper arms
  ellipse(260, 180, 5, 40);
  ellipse(300, 180, 5, 40);

  //draw girl's left then right forearms
  ellipse(260, 220, 5, 40);
  ellipse(300, 220, 5, 40);

  //draw girl's torso
  fill(255);
  triangle(260, 160, 280, 220, 300, 160);

  //draw girl's hips
  triangle(260, 240, 280, 200, 300, 240);

  //draw girl's *static* dress
  rect(260, 240, 40, 40);

  //draw girl's *flowing* dress
  triangle(300, 240, 300, 280,300+(pmouseX/6), 280);

  //draw girl's head
  fill(245, 210, 115);
  ellipse(280, 140, 40, 40);
  
  //draw girl's hair
  triangle(260,140,300,140,280+(pmouseX/6),200);

}

  void mousePressed(){
    println("Pls don't fail me :D");
  }