Your browser does not support the canvas tag.

previous        Show / Hide Source        Download        next
/*Name: Reece Themen
Student #99140042
Class Code:PROG14998
*/

void setup() {
  size (400, 400);
  frameRate(20);
}

void draw() {
  background(255);

stroke(0);
strokeWeight(20);
ellipseMode(CENTER);
ellipse(width/2,height/2, 800*sin(frameCount), 800*sin(frameCount));
ellipse(width/2,height/2, 800*sin(frameCount+PI), 800*sin(frameCount+PI));
ellipse(width/2,height/2, 800*sin(frameCount+HALF_PI), 800*sin(frameCount+HALF_PI));
ellipse(width/2,height/2, 800*sin(frameCount-HALF_PI), 800*sin(frameCount-HALF_PI));

  //Jack's abdomin
  stroke(0);
  strokeWeight(1);
  quad(170 + mouseX/(13.3333), 218 - mouseX/(22.2222), 230 - mouseX/(13.3333), 218 - mouseX/(22.2222), 218 - mouseX/(22.2222), 157 + mouseX/(9.3023), 182 + mouseX/(22.2222), 157 + mouseX/(9.3023));
  line(180 + mouseX/(20), 218 - mouseX/(22.2222), 221 - mouseX/(19.0476), 176 + mouseX/(16.6666));
  line(195 + mouseX/(80), 218 - mouseX/(22.2222), 224 - mouseX/(16.6666), 190 + mouseX/(40));
  line(176 + mouseX/(16.6666), 190 + mouseX/(40), 192 + mouseX/(50), 205 - mouseX/(80));
  line(179 + mouseX/(19.0476), 176 + mouseX/(16.6666), 200, 196+mouseX/(100));

  //Jack's belt
  rectMode(CORNERS);
  rect(177+mouseX/(17.3913), 218 - mouseX/(22.2222), 223-mouseX/(17.3913), 232-mouseX/(12.5));
  line(177+mouseX/(17.3913), 221-mouseX/(19.0476), 223-mouseX/(17.3913), 225-mouseX/(16));
  line(223-mouseX/(17.3913), 225-mouseX/(16), 177+mouseX/(17.3913), 228-mouseX/(14.2857));

  //Jack's legs
  quad(177+mouseX/(17.3913), 232-mouseX/(12.5), 223-mouseX/(17.3913), 232-mouseX/(12.5), 280-mouseX/(5), 325-mouseX/(3.2), 120+mouseX/(5), 325-mouseX/(3.2));
  line(155+mouseX/(8.8888), 325-mouseX/(3.2), 184+mouseX/(25), 232-mouseX/(12.5));
  line(170+mouseX/(13.3333), 325-mouseX/(3.2), 199+mouseX/(400), 232-mouseX/(12.5));

  //Jack's left foot
  quad(120+mouseX/(5), 325-mouseX/(3.2), 140+ mouseX/(6.6666), 325-mouseX/(3.2), 132 + mouseX/(5.8823), 364 - mouseX/(2.43902), 108 + mouseX/(4.3478), 364 - mouseX/(2.43902));
  line(110+mouseX/(4.4444), 360-mouseX/(2.5), 133 + mouseX/(5.9701), 360-mouseX/(2.5));
  line(125+mouseX/(5.3333), 360-mouseX/(2.5), 127+mouseX/(5.4794), 352-mouseX/(2.6315));
  line(127+mouseX/(5.4794), 352-mouseX/(2.6315), 135+mouseX/(6.1538), 347-mouseX/(2.7210));
  line(127+mouseX/(5.4794), 352-mouseX/(2.6315), 136+mouseX/(6.25), 342-mouseX/(2.8169));
  line(127+mouseX/(5.4794), 352-mouseX/(2.6315), 115+mouseX/(4.7058), 343-mouseX/(2.7972));
  line(127+mouseX/(5.4794), 352-mouseX/(2.6315), 113+mouseX/(4.5977), 346-mouseX/(2.7397));
  line(120+mouseX/(5), 360-mouseX/(2.5), 122+mouseX/(5.1282), 353-mouseX/(2.6143));
  line(115+mouseX/(4.7058), 360-mouseX/(2.5), 117+mouseX/(4.8192), 353-mouseX/(2.6143));

  //Jack's right foot
  quad(280-mouseX/(5), 325-mouseX/(3.2), 260- mouseX/(6.6666), 325-mouseX/(3.2), 268- mouseX/(5.8823), 364 - mouseX/(2.439), 292- mouseX/(4.3478), 364 - mouseX/(2.439));
  line(290-mouseX/(4.4444), 360-mouseX/(2.5), 267- mouseX/(5.9701), 360-mouseX/(2.5));
  line(275-mouseX/(5.3333), 360-mouseX/(2.5), 273-mouseX/(5.4794), 352-mouseX/(2.6315));
  line(273-mouseX/(5.4794), 352-mouseX/(2.6315), 265-mouseX/(6.1538), 347-mouseX/(2.7210));
  line(273-mouseX/(5.4794), 352-mouseX/(2.6315), 264-mouseX/(6.25), 342-mouseX/(2.8169));
  line(273-mouseX/(5.4794), 352-mouseX/(2.6315), 285-mouseX/(4.7058), 343-mouseX/(2.7972));
  line(273-mouseX/(5.4794), 352-mouseX/(2.6315), 287-mouseX/(4.5977), 346-mouseX/(2.7397));
  line(280-mouseX/(5), 360-mouseX/(2.5), 278-mouseX/(5.1282), 353-mouseX/(2.6143));
  line(285-mouseX/(4.7058), 360-mouseX/(2.5), 283-mouseX/(4.8192), 353-mouseX/(2.6143));


  //Jack's left arm
  quad(177 + mouseX/(17.3913), 176 + mouseX/(16.6666), 84+mouseX/(3.4482), 197+mouseX/(133.3333), 93+mouseX/(3.7383), 240-mouseX/(10), 172+mouseX/(14.2857), 206-mouseX/(66.6666));
  line(95+mouseX/(3.8095), 194+mouseX/(66.6666), 103+mouseX/(4.1237), 235-mouseX/(11.4285));
  quad(84+mouseX/(3.4482), 197+mouseX/(133.3333), 86+mouseX/(3.50877), 208-mouseX/(50),66+mouseX/(2.98507), 212-mouseX/(33.3333), 70 + mouseX/(3.0769), 200 );
  noStroke();
  triangle(86+mouseX/(3.50877), 209-mouseX/(44.4444), 93+mouseX/(3.7383), 240-mouseX/(100), 79+mouseX/(3.3057), 210-mouseX/(40));
  stroke(0);
  line(93+mouseX/(3.7383), 240-mouseX/(10), 79+mouseX/(3.3057), 210-mouseX/(40));
  
  //Jacks right arm
  quad(222- mouseX/(18.1818), 176 + mouseX/(16.6666), 316-mouseX/(3.4482), 195+mouseX/(80), 307-mouseX/(3.7383), 240-mouseX/(10), 228-mouseX/(14.2857), 206-mouseX/(66.6666));
  line(305-mouseX/(3.8095), 194+mouseX/(66.6666), 297-mouseX/(4.1237), 235-mouseX/(11.4285));
  quad(316-mouseX/(3.4482), 197+mouseX/(133.3333), 314-mouseX/(3.50877), 208-mouseX/(50),334-mouseX/(2.98507), 212-mouseX/(33.3333), 330- mouseX/(3.0769), 200 );
  rect(333-mouseX/(3.0075),193+mouseX/(57.1428), 328-mouseX/(3.125), 205-mouseX/(80));
  quad(353-mouseX/(2.6143), 200, 350-mouseX/(2.6666), 220-mouseX/(20), 332-mouseX/(3.0303), 220-mouseX/(20), 333-mouseX/(3.0075), 193+mouseX/(57.1428));
  rect(357-mouseX/(2.5477), 193+mouseX/(57.1428), 333-mouseX/(3.0075),200);
  line(332-mouseX/(3.0303), 207-mouseX/(57.1428), 348-mouseX/(2.7027),207-mouseX/(57.1428));
  line(332-mouseX/(3.0303),213.5-mouseX/(29.6296), 346-mouseX/(2.7397),213.5-mouseX/(29.6296));
  noStroke();
  triangle(314-mouseX/(3.50877), 209-mouseX/(44.4444), 307-mouseX/(3.7383), 240-mouseX/(100), 321-mouseX/(3.3057), 210-mouseX/(40));
  stroke(0);
  line(307-mouseX/(3.7383), 240-mouseX/(10), 321-mouseX/(3.3057), 210-mouseX/(40));
  
  //Jack's sword and hand
  rectMode(CORNERS);
  rect(40+mouseX/(2.5), 187+mouseX/(30.7692), 78+mouseX/(3.2786), 193+mouseX/(57.1428));
  rect(67+mouseX/(3.0075),193+mouseX/(57.1428), 72+mouseX/(3.125), 205-mouseX/(80));
  quad(47+mouseX/(2.6143), 200, 50+mouseX/(2.6666), 220-mouseX/(20), 68+mouseX/(3.0303), 220-mouseX/(20), 67+mouseX/(3.0075), 193+mouseX/(57.1428));
  rect(43+mouseX/(2.5477), 193+mouseX/(57.1428), 67+mouseX/(3.0075),200);
  rect(55+mouseX/(2.7586), 220-mouseX/(20), 62+mouseX/(2.8985), 240-mouseX/(10));
  quad(55+mouseX/(2.7586),187+mouseX/(30.7692), 62+mouseX/(2.8985),187+mouseX/(30.7692), 60+mouseX/(2.8571), 60+mouseX/(2.8571), 50+mouseX/(2.6666), 70+mouseX/(3.0769));
  line(68+mouseX/(3.0303), 207-mouseX/(57.1428), 52+mouseX/(2.7027),207-mouseX/(57.1428));
  line(68+mouseX/(3.0303),213.5-mouseX/(29.6296), 54+mouseX/(2.7397),213.5-mouseX/(29.6296));
  



  //Jack's head
  noStroke();
  rectMode(CORNERS);
  fill(255);
  rect(186+mouseX/(28.5714), 120 + mouseX/(5), 214 -mouseX/(28.5714), 168 + mouseX/(12.5));
  triangle(186+mouseX/(28.5714), 120+mouseX/(5), 186+mouseX/(28.5714), 168+mouseX/(12.5), 180+mouseX/(20), 152+mouseX/(8.3333));
  triangle(214-mouseX/(28.5714), 120+mouseX/(5), 214-mouseX/(28.5714), 168+mouseX/(12.5), 220-mouseX/(20), 152+mouseX/(8.3333));

  stroke(0);
  line(186+mouseX/(28.5714), 120+mouseX/(5), 214-mouseX/(28.5714), 120+mouseX/(5));
  line(186+mouseX/(28.5714), 120+mouseX/(5), 180+mouseX/(20), 152+mouseX/(8.3333));
  line(214-mouseX/(28.5714), 120+mouseX/(5), 220-mouseX/(20), 152+mouseX/(8.3333));
  line(186+mouseX/(28.5714), 168+mouseX/(12.5), 180+mouseX/(20), 152+mouseX/(8.3333));
  line(214-mouseX/(28.5714), 168+mouseX/(12.5), 220-mouseX/(20), 152+mouseX/(8.3333));
  line(186 +mouseX/(28.5714), 168 + mouseX/(12.5), 214 -mouseX/(28.5714), 168 + mouseX/(12.5));

  //Jack's nose
  line(200, 128+mouseX/(5.5555), 200, 142+mouseX/(6.8965));
  line(200,142+mouseX/(6.8965), 205-mouseX/(80), 140+mouseX/(6.6666)); 
  
  //Jack's hair
  line(186 +mouseX/(28.5714),120 + mouseX/(5), 200, 125+mouseX/(5.3333));
  line(214 -mouseX/(28.5714),120 + mouseX/(5),200, 125+mouseX/(5.3333));
  triangle(200, 119 + mouseX/(4.9382), 200, 110+mouseX/(4.4444), 195+mouseX/(80),110+mouseX/(4.4444));
  
  //Jack's mouth
  ellipseMode(CORNERS);
  arc(192.5+mouseX/(53.3333), 145+mouseX/(7.2727), 207.5-mouseX/(53.3333), 155+mouseX/(8.8888), PI+QUARTER_PI/3, TWO_PI-QUARTER_PI/3); 
  
  //Jack's ears
  triangle(178+mouseX/(18.1818), 140+mouseX/(6.6666), 183+mouseX/(23.5294), 135+mouseX/(6.1538),181+mouseX/(21.0526), 143+mouseX/(7.0175));
  triangle(222-mouseX/(18.1818), 140+mouseX/(6.6666), 217-mouseX/(23.5294), 135+mouseX/(6.1538),219-mouseX/(21.0526), 143+mouseX/(7.0175));
  
  //Jack's eyes and brows
  ellipseMode(CORNERS);
  arc(187+mouseX/(30.7692), 133.5+mouseX/(6.3492), 193+mouseX/(57.1428), 140.5+mouseX/(6.7226), PI+QUARTER_PI+QUARTER_PI/2, TWO_PI-QUARTER_PI/2);
  arc(208-mouseX/(50), 133.5+mouseX/(6.3492), 214-mouseX/(28.5714), 140.5+mouseX/(6.7226), PI+QUARTER_PI/2, TWO_PI-QUARTER_PI-QUARTER_PI/2);
  line(190+mouseX/(40), 137+mouseX/(6.3492), 188+mouseX/(33.3333), 137+mouseX/(6.3492));
  line(210-mouseX/(40), 137+mouseX/(6.3492), 212-mouseX/(33.3333), 137+mouseX/(6.3492));
  fill(0);
  triangle(195+mouseX/(80), 132+mouseX/(5.8823), 186+mouseX/(28.5714), 128+mouseX/(5.5555),  186+mouseX/(28.5714), 126+mouseX/(5.4054));
  triangle(205-mouseX/(80), 132+mouseX/(5.8823), 214-mouseX/(28.5714), 128+mouseX/(5.5555),  214-mouseX/(28.5714), 126+mouseX/(5.4054));

  //aku's circle
  ellipseMode(CENTER);
  fill(255);
  stroke(0);
  ellipse(mouseX, mouseY, 90, 110);

  //aku's palm
  ellipseMode(CORNER);
  fill(0);
  stroke(0);
  ellipse(mouseX, mouseY, 30, 40);

  stroke(255);
  fill(255);
  arc(mouseX+15, mouseY+10, 30, 45, HALF_PI + QUARTER_PI, PI+HALF_PI+QUARTER_PI);

  //aku's index finger base
  rectMode(CORNER);
  stroke(0);
  fill(0);
  rect(mouseX+18, mouseY-21, 10, 30);

  stroke(255);
  fill(255);
  ellipseMode(CENTER);
  ellipse(mouseX+18, mouseY-12, 7, 25);
  ellipse(mouseX+28, mouseY-10, 4, 30);

  //aku's index finger
  ellipseMode(CENTER);
  fill(0);
  noStroke();
  arc(mouseX+7, mouseY-21, 40, 40, PI+QUARTER_PI, TWO_PI);

  fill(255);
  noStroke();
  arc(mouseX+1, mouseY-21, 40, 36, PI+QUARTER_PI, TWO_PI);

  //aku's middle finger
  ellipseMode(CENTER);
  noStroke();
  fill(0);
  arc(mouseX-8, mouseY+2, 50, 60, PI+QUARTER_PI, TWO_PI);

  fill(255);
  arc(mouseX-15, mouseY+2, 50, 50, PI+QUARTER_PI, TWO_PI);

  //aku's ring finger
  ellipseMode(CENTER);
  fill(0);
  noStroke();
  arc(mouseX-9, mouseY+20, 50, 50, PI, PI+HALF_PI+QUARTER_PI);

  fill(255);
  arc(mouseX-12, mouseY+26, 45, 50, PI, PI+HALF_PI+QUARTER_PI);

  //aku's pinky finger base
  rectMode(CORNER);
  fill(0);
  noStroke();
  rect(mouseX-7, mouseY+15, 7, 10);
  triangle(mouseX-7, mouseY+15, mouseX-7, mouseY+25, mouseX-15, mouseY+25);

  ellipseMode(CENTER);
  fill(255);
  ellipse(mouseX-2, mouseY+15, 7, 2);
  ellipse(mouseX-15, mouseY+15, 16, 20);

  //aku's pinky finger
  ellipseMode(CORNER);
  fill(0);
  noStroke();
  arc(mouseX-15, mouseY, 22, 50, HALF_PI, PI);

  ellipseMode(CENTER);
  fill(255);
  ellipse(mouseX-2, mouseY+37.5, 12, 25);
  
}