Create a Burger in Processing!


Here's a cheeseburger on a plate that I created in Processing during class on Thursday. I found it very useful to start with a sketch and mapping out the coordinates. Here's the code, it involves quite a lot of singular objects that could be shortened down a lot with the use of for loops, but I had fun playing around with it:

void setup() {
  size(500, 500);
  background(0);
}

void draw() {
  noStroke();

  // plate
  fill(173, 119, 104);
  ellipse(250, 395, 100, 30);
  fill(0,0,0);
  rect(200, 380, 10, 30);
  rect(290, 380, 10, 30);
  fill(206, 247, 145);
  ellipse(250, 334, 290, 120);
  fill(239, 173, 155);
  ellipse(250, 330, 270, 100);
  fill(255, 247, 142);
  ellipse(250, 326, 250, 80);
  fill(255, 211, 142);
  ellipse(250, 322, 230, 60);
  
  // bottom bun
  fill(173, 129, 79);
  ellipse(250, 320, 200, 90);
  fill(178, 133, 82);
  ellipse(250, 312, 200, 90);
  fill(188, 141, 86);
  ellipse(250, 305, 200, 90);

  // patty
  fill(79, 49, 11);
  ellipse(250, 300, 200, 80);
  fill(79, 49, 11);
  ellipse(250, 294, 200, 80);
  fill(86, 54, 13);
  ellipse(250, 287, 200, 80);
  fill(89, 55, 12);
  ellipse(250, 280, 200, 80);


  // cheese
  fill(239, 213, 62);
  quad(160, 260, 160, 300, 340, 300, 340, 260);
  fill(255, 226, 66);
  quad(250, 240, 150, 280, 250, 320, 350, 280);

  // tomato
  fill(249, 40, 17);
  ellipse(250, 270, 200, 40);

  // lettuce
  fill(105, 183, 71);
  ellipse(148, 265, 30, 25);
  ellipse(150, 260, 30, 25);
  ellipse(175, 260, 30, 20);
  ellipse(180, 270, 30, 20);
  ellipse(185, 270, 40, 25);
  ellipse(190, 275, 40, 25);
  ellipse(187, 270, 30, 20);
  ellipse(190, 270, 30, 20);
  ellipse(205, 260, 40, 25);
  ellipse(215, 265, 40, 25);
  ellipse(225, 260, 40, 20);
  ellipse(195, 270, 30, 20);
  ellipse(235, 265, 30, 20);
  ellipse(255, 265, 40, 25);
  ellipse(305, 270, 40, 25);
  ellipse(285, 265, 30, 20);
  ellipse(275, 275, 30, 25);
  ellipse(315, 285, 40, 25);
  ellipse(325, 275, 30, 25);
  ellipse(275, 265, 40, 25);
  ellipse(315, 260, 30, 25);
  ellipse(335, 255, 30, 25);
  ellipse(340, 260, 40, 30);
  ellipse(355, 255, 30, 25);

  fill(113, 196, 78);
  ellipse(150, 255, 30, 25);
  ellipse(165, 250, 30, 25);
  ellipse(170, 255, 30, 20);
  ellipse(175, 265, 30, 20);
  ellipse(180, 265, 40, 25);
  ellipse(185, 270, 40, 25);
  ellipse(187, 265, 30, 20);
  ellipse(190, 265, 30, 20);
  ellipse(200, 255, 40, 25);
  ellipse(210, 260, 40, 25);
  ellipse(220, 255, 40, 20);
  ellipse(190, 265, 30, 20);
  ellipse(230, 255, 30, 20);
  ellipse(250, 255, 40, 25);
  ellipse(300, 260, 40, 25);
  ellipse(280, 255, 30, 20);
  ellipse(270, 265, 30, 25);
  ellipse(310, 265, 40, 25);
  ellipse(325, 265, 30, 25);
  ellipse(270, 255, 40, 25);
  ellipse(310, 250, 30, 25);
  ellipse(330, 245, 30, 25);
  ellipse(345, 250, 40, 30);
  ellipse(350, 245, 30, 25);
  

  // top bun
  fill(186, 139, 85);
  ellipse(250, 220, 200, 95);
  fill(191, 142, 86);
  ellipse(250, 215, 200, 100);
  fill(198, 148, 91);
  ellipse(250, 210, 200, 105);
  fill(201, 151, 94);
  ellipse(250, 205, 200, 100);
  fill(206, 154, 95);
  ellipse(250, 200, 195, 100);
  fill(224, 203, 177, 40);
  ellipse(320, 200, 15, 30);
  fill(224, 203, 177, 40);
  ellipse(310, 210, 10, 20);

  // seeds
  fill(237, 226, 213);
  ellipse(250, 190, 5, 3);
  ellipse(260, 180, 3, 5);
  ellipse(255, 200, 5, 3);
  ellipse(265, 185, 3, 5);
  ellipse(235, 200, 5, 3);
  ellipse(240, 195, 3, 5);
  ellipse(245, 175, 5, 3);
  ellipse(270, 170, 3, 5);
  ellipse(230, 190, 5, 4);
  ellipse(233, 190, 3, 5);
  ellipse(236, 170, 5, 3);
  ellipse(239, 175, 3, 2);
  ellipse(215, 175, 5, 4);
  ellipse(218, 185, 3, 5);
  ellipse(245, 175, 5, 3);
  ellipse(270, 190, 3, 5);
  ellipse(235, 175, 5, 3);
  ellipse(230, 170, 3, 5);
  ellipse(240, 190, 4, 4);
  ellipse(253, 190, 3, 5);
  ellipse(266, 170, 2, 3);
  ellipse(279, 175, 3, 2);
  ellipse(285, 175, 5, 4);
  ellipse(218, 185, 4, 5);
  ellipse(215, 175, 2, 3);
  ellipse(210, 190, 3, 5);
  ellipse(220, 190, 3, 4);
  ellipse(223, 190, 3, 5);
  ellipse(226, 170, 2, 3);
  ellipse(229, 175, 3, 2);
  ellipse(225, 175, 3, 4);
  ellipse(238, 185, 4, 5);
  ellipse(235, 175, 2, 3);
  ellipse(240, 190, 3, 5);
  
  noLoop();
}


~ Chloe

Comments