Interactive Art WEEK 2, Homework

The movie I chose as this weeks homework assignment is how to train your dragon: The hidden world. It is a movie by pixar and I picked it because I am a huge fan of animation and I have been anticipating this movie for a long time. When I finally saw it when it came out I loved it a lot, espeshially the beautifull animation and character design.

 

 About the coding:

I did my best to recreate the screenshot the best I could and use all required coding but I noticed that I was struggling quite a bit and did't understand some problems I encountered so I hope to perhaps have these answered in class.

My code:

  void setup() {
  size(900, 500);
  background(108, 94, 173);
}

void draw() {

  //creating the scenery
 
   fill(187, 122, 128);
   beginShape();
   vertex(50, 500);
   vertex(200, 300);
   vertex(230, 340);
   vertex(600, 250);
   vertex(900, 500);
   endShape(CLOSE);
 
 
  stroke(205, 150, 155);
  fill(223, 166, 159);
  beginShape();
  vertex(0, 467);
  vertex(100, 430);
  vertex(230, 410);
  vertex(800, 460);
  vertex(850, 470);
  vertex(900, 475);
  vertex(900, 500);
  vertex(0, 500);
  endShape(CLOSE);
 
  fill(241, 186, 191);
  beginShape();
  vertex(100, 430);
  vertex(230, 410);
  vertex(180, 430);
  endShape(CLOSE);
 
  fill(233, 178, 184);
  beginShape();
  vertex(100, 430);
  vertex(230, 410);
  vertex(180, 430);
  endShape(CLOSE);
 
  fill(254, 212, 198);
  stroke(238, 185, 139);
  beginShape();
  vertex(0, 470);
  vertex(180, 430);
  vertex(400, 460);
  vertex(900, 500);
  vertex(0, 500);
  endShape(CLOSE);

   noStroke();
   fill(73, 55, 79);
   beginShape();
   vertex(260, 0);
   vertex(300, 50);
   vertex(340, 10);
   vertex(380, 200);
   vertex(450, 80);
   vertex(570, 250);
   vertex(600, 50);
   vertex(650, 100);
   vertex(690, 50);
   vertex(720, 140);
   vertex(800, 40);
   vertex(900, 0);
    endShape(CLOSE);
   

  //drawing toothless
 
  //wings first because that's furthest back
 
  fill(60, 49, 45);
  stroke(23, 17, 29);
  ellipse(795, 329, 125, 245);
 
  pushMatrix();
  rotate(radians(20));
  ellipse(720, 50, 150, 230);
 
  rotate(radians(10));
  ellipse(810, -100, 110, 250);
  popMatrix();
 
  //noStroke();
  //fill(108, 94, 173);
  //ellipse(795, 430, 90, 50);

  //now to create the body
 
  //I wanted to create an outline for the body so I will be drawing (cont.)
  //all shapes twice, but the first time I am rawing, which will be (cont.)
  //behind the rest I will make the color darker to create this outline
 
  noStroke();
  fill(23, 17, 29);
  ellipse(685, 316, 154, 262);
  beginShape();
  vertex(747, 170);
  vertex(759, 277);
  vertex(745, 269);
  endShape(CLOSE);
 
  beginShape();
  vertex(625, 169);
  vertex(613, 270);
  vertex(630, 277);
  endShape(CLOSE);
 
  //now the foreground of the body
  fill(60, 49, 45);
  ellipse(685, 315, 150, 260);
  rect(627, 170, 120, 99);
  beginShape();
  vertex(745, 170);
  vertex(757, 277);
  vertex(745, 269);
  endShape(CLOSE);
 
  beginShape();
  vertex(627, 169);
  vertex(615, 270);
  vertex(630, 277);
  endShape(CLOSE);
 
  //starting on the legs now
 
  //left hindleg
 
  fill(23, 17, 29);
  ellipse(608, 450, 50, 12);
  stroke(23, 17, 29);
  fill(60, 49, 45); 
  ellipse(610, 365, 45, 130);
  rect(592, 408, 42, 39);
  noStroke();
  rect(593, 390, 41, 40);
  ellipse(610, 450, 50, 10);
 
  //outline
  fill(23, 17, 29);
  noStroke();
  ellipse(760, 325, 47, 153);
 
  pushMatrix();
  rotate(radians(20));
  ellipse(840, 120, 47, 132);
  rotate(radians(-9));
  rect(786, 277, 44, 38, 7);
  popMatrix();

 
    //Details on leg 1
  fill(60, 49, 45);
  stroke(23, 17, 29);
  pushMatrix();
  rotate(radians(-25));
  ellipse(531, 692, 7, 15);
  ellipse(520, 700, 7, 15);
  ellipse(509, 709, 7, 15);
  ellipse(500, 723, 7, 15);
  popMatrix();
 
  //Leg fill
 
  noStroke();
  ellipse(760, 325, 45, 150);
 
  pushMatrix();
  rotate(radians(20));
  ellipse(840, 120, 45, 130);
  rotate(radians(-9));
  rect(787, 277, 42, 38, 7);
  popMatrix();
 
  ellipse(750, 277, 45, 47);


  //toes
 
  stroke(23, 17, 29);
  pushMatrix();
  rotate(radians(30));
  ellipse(872, 34, 9, 15);
  rotate(radians(10));
  ellipse(853, -112, 7, 12);
  ellipse(842, -108, 7, 12);
  popMatrix();
 
  //second leg(left)
 
  //leg details
  ellipse(603, 400, 8, 10);
 
  //outline
  fill(23, 17, 29);
  ellipse(620, 325, 47, 152);
 
  pushMatrix();
  rotate(radians(-15));
  ellipse(503, 550, 47, 130);
  rotate(radians(3));
  rect(510, 548, 44, 39, 7);
  popMatrix();
 
  //leg fill
  noStroke();
  fill(60, 49, 45);
  ellipse(620, 325, 45, 150);
 
  pushMatrix();
  rotate(radians(-15));
  ellipse(503, 550, 45, 130);
  rotate(radians(3));
  rect(511, 548, 42, 39, 7);
  popMatrix();
 
  ellipse(641, 274, 45, 47);
 
  //toes
 
  stroke(23, 17, 29);
  pushMatrix();
  rotate(radians(-30));
  ellipse(314, 718, 9, 15);
  rotate(radians(-10));
  ellipse(197, 770, 9, 15);
  ellipse(210, 778, 9, 15);
  popMatrix();
 
 
  //The head
 
  //first details because those go behind the head
  ellipse(758, 144, 30, 20);
  ellipse(758, 165, 20, 10);
 
  ellipse(615, 144, 30, 20);
  ellipse(615, 165, 20, 10);
 
 
  fill(23, 17, 29);
  ellipse(685, 144, 151, 111);
 
  rect(619, 75, 31, 45, 7);
  rect(719, 75, 31, 45, 7);
  rect(660, 78, 17, 30, 7);
  rect(694, 78, 17, 30, 7);
 
  pushMatrix();
  rotate(radians(-28));
  ellipse(610, 416, 30, 50);
  ellipse(580, 404, 17, 35); 
  popMatrix();
 
  pushMatrix();
  rotate(radians(28));
  ellipse(600, -229, 30, 50);
  ellipse(630, -240, 17, 35); 
  popMatrix();
 
 
  noStroke();
  fill(60, 49, 45);
  ellipse(685, 145, 150, 110);
  rect(620, 75, 30, 45, 7);
  rect(720, 75, 30, 45, 7);
  rect(660, 78, 17, 30, 7);
  rect(694, 78, 17, 30, 7);
 
  pushMatrix();
  rotate(radians(-28));
  ellipse(610, 416, 30, 50);
  ellipse(580, 404, 17, 35); 
  popMatrix();
 
  pushMatrix();
  rotate(radians(28));
  ellipse(600, -229, 30, 50);
  ellipse(630, -240, 17, 35); 
  popMatrix(); 
 
  //eyes
  pushMatrix();
  rotate(radians(10));
  fill(168, 146, 105);
  ellipse(660, 28, 40, 30);
  popMatrix();
 
  pushMatrix();
  rotate(radians(-5));
  ellipse(702, 206, 40, 30);
  popMatrix();
 
  fill(12, 10, 15);
  rect(640, 135, 20, 22, 7);
  rect(703, 136, 20, 22, 7);
  stroke(12, 10, 15);
  line(655, 170, 710, 170);








  //Drawing lightfury
 
   
  //againwings first because that's furthest back
 

  //now to create the body
 
  //I wanted to create an outline for the body so I will be drawing (cont.)
  //all shapes twice, but the first time I am rawing, which will be (cont.)
  //behind the rest I will make the color darker to create this outline
 
  noStroke();
  fill(186, 155, 170);
  ellipse(485, 316, 154, 262);
  beginShape();
  vertex(547, 170);
  vertex(559, 277);
  vertex(545, 269);
  endShape(CLOSE);
 
  beginShape();
  vertex(425, 169);
  vertex(413, 270);
  vertex(430, 277);
  endShape(CLOSE);
 
  //now the foreground of the body
  fill(240, 224, 235);
  ellipse(485, 315, 150, 260);
  rect(427, 170, 120, 99);
  beginShape();
  vertex(545, 170);
  vertex(557, 277);
  vertex(545, 269);
  endShape(CLOSE);
 
  beginShape();
  vertex(427, 169);
  vertex(415, 270);
  vertex(430, 277);
  endShape(CLOSE);
 
  //starting on the legs now
 
  //left hindleg
 
  fill(186, 155, 170);
  ellipse(419, 441, 50, 20);
  fill(240, 224, 235);
  stroke(186, 155, 170); 
  ellipse(410, 365, 45, 130);
 
  pushMatrix();
  rotate(radians(-20));
  rect(230, 520, 42, 39);
  noStroke();
  rect(231, 517, 42, 39);
  ellipse(410, 450, 50, 10);
  popMatrix();
  ellipse(420, 440, 50, 20);
 
  //outline right front
  fill(186, 155, 170);
  noStroke();
  ellipse(560, 325, 47, 153);
 
  pushMatrix();
  rotate(radians(40));
  ellipse(655, 200, 47, 132);
  popMatrix();


  //Leg fill
 
  noStroke();
  fill(240, 224, 235);


  pushMatrix();
  rotate(radians(20));
  fill(186, 155, 170);
  ellipse(655, 200, 48, 132);
  fill(240, 224, 235);
  ellipse(655, 200, 47, 132);
  popMatrix();
 
  ellipse(560, 325, 45, 150);
  ellipse(550, 277, 45, 47);


  //toes
 
  stroke(186, 155, 170);
  pushMatrix();
  rotate(radians(30));
  ellipse(677, 143, 9, 15);
  rotate(radians(10));
  ellipse(701, 25, 7, 12);
  ellipse(710, 20, 7, 12);
  popMatrix();
 
  //second leg(left)
 
  //outline
  fill(186, 155, 170);
  ellipse(420, 325, 47, 152);
 
  pushMatrix();
  rotate(radians(-45));
  ellipse(30, 620, 53, 130);
  popMatrix();
 
  //leg fill
  noStroke();
  fill(240, 224, 235);
  ellipse(420, 325, 45, 150);
 
  pushMatrix();
  rotate(radians(-45));
  ellipse(30, 620, 53, 130);
  popMatrix();
 
  ellipse(441, 274, 45, 47);
 
  //toes
 
  stroke(186, 155, 170);
  pushMatrix();
  rotate(radians(-30));
  ellipse(195, 650, 9, 15);
  rotate(radians(-10));
  ellipse(87, 680, 9, 15);
  ellipse(95, 682, 9, 15);
  popMatrix();
 
 
  //The head
 
  //first details because those go behind the head
  ellipse(556, 130, 30, 20);

 
  ellipse(416, 130, 30, 20);

 
 
  fill(186, 155, 170);
  ellipse(485, 144, 151, 111);
 
  pushMatrix();
  rotate(radians(-28));
  ellipse(420, 322, 30, 50);
  fill(240, 224, 235);
  ellipse(420, 322, 29, 50);

  rotate(radians(56));
  ellipse(435, -129, 30, 50); 
  popMatrix();
 
 
  noStroke();
  fill(240, 224, 235);
  ellipse(485, 145, 150, 110);
 
  //eyes
 
  fill(151,170,203);
  ellipse(455, 145, 40, 30);
  ellipse(520, 145, 40, 30);
  fill(28, 18, 19);
  ellipse(459, 142, 18, 20);
  ellipse(518, 142, 18, 20);
 
  //I was unable to figure out how the translate function works or
  //rather how to use it in this code so I hope to ask this uestion during
  //class and I also hope that this doesn't invalidate my homework :)
 
}

Comments