/* |||||||||||||||||||||||||||||||||||||||||||| || Interactive Drawing Assignment || || by: Nick Olivieri || |||||||||||||||||||||||||||||||||||||||||||| */ void setup() { size(400, 400); } void draw() { background (40, 40, 40); frameRate(30); //stars noStroke(); fill(255, 0 + pmouseX - mouseY); ellipse(108, 54, 3, 3); ellipse(200, 90, 3, 3); ellipse(87, 241, 3, 3); ellipse(173, 304, 3, 3); ellipse(341, 169, 3, 3); ellipse(291, 264, 3, 3); ellipse(210, 279, 3, 3); fill(255, 100 + mouseY - mouseX); ellipse(221, 128, 3, 3); ellipse(348, 31, 3, 3); ellipse(136, 17, 3, 3); ellipse(31, 63, 3, 3); ellipse(39, 341, 3, 3); ellipse(184, 324, 3, 3); ellipse(320, 239, 3, 3); fill(255, 255 - mouseX - mouseY); ellipse(320, 322, 3, 3); ellipse(215, 111, 3, 3); ellipse(260, 40, 3, 3); ellipse(99, 125, 3, 3); ellipse(150, 205, 3, 3); ellipse(250, 196, 3, 3); //planet fill(230, 95, 50); ellipse(650 - mouseX, 650 - mouseY / 7, 750, 500); //asteroids //asteroid body 1 stroke(0); fill(80, 77, 70); ellipse(350 - pmouseX / 1.5, 50, 45, 45); //craters fill(65, 65, 65); ellipse(355 - pmouseX / 1.5, 40, 15, 15); ellipse(342 - pmouseX / 1.5, 57, 10, 12); ellipse(362 - pmouseX / 1.5, 55, 5, 7); //broken off bits ellipse(385 - pmouseX / 2, 40, 15, 15); ellipse(342 - pmouseX / 3, 80, 5, 7); ellipse(360 - pmouseX / 2.5, 90, 5, 7); ellipse(375 - pmouseX / 1, 75, 5, 7); //asteroid body 2 fill(80, 77, 70); ellipse(550 - pmouseX * 1.5, 230, 40, 40); //craters fill(65, 65, 65); ellipse(555 - pmouseX * 1.5, 220, 13, 13); ellipse(562 - pmouseX * 1.5, 237, 8, 10); ellipse(542 - pmouseX * 1.5, 235, 5, 7); //broken off bits ellipse(520 - pmouseX * 1.2, 220, 13, 13); ellipse(562 - pmouseX / 0.8, 200, 8, 10); ellipse(530 - pmouseX / 0.5, 260, 5, 7); //asteroid body 3 fill(80, 77, 70); ellipse(250 - pmouseX / 0.5, 180, 50, 50); //craters fill(65, 65, 65); ellipse(255 - pmouseX / 0.5, 170, 15, 15); ellipse(262 - pmouseX / 0.5, 187, 10, 12); ellipse(242 - pmouseX / 0.5, 185, 5, 7); //broken off bits ellipse(255 - pmouseX / 1.6, 140, 13, 13); ellipse(280 - pmouseX * 0.7, 200, 10, 12); ellipse(300 - pmouseX, 185, 5, 7); //space ship //ship body fill(0, 255, 0); quad(107 + mouseX/1.5, 63 + mouseY/1.5, 107 + mouseX/1.5, 78 + mouseY/1.5, 83 + mouseX/1.5, 77 + mouseY/1.5, 83 + mouseX/1.5, 62 + mouseY/1.5); quad(142 + mouseX/1.5, 64 + mouseY/1.5, 150 + mouseX/1.5, 66 + mouseY/1.5, 141 + mouseX/1.5, 79 + mouseY/1.5, 83 + mouseX/1.5, 86 + mouseY/1.5); quad(112 + mouseX/1.5, 56 + mouseY/1.5, 109 + mouseX/1.5, 52 + mouseY/1.5, 85 + mouseX/1.5, 48 + mouseY/1.5, 78 + mouseX/1.5, 58 + mouseY/1.5); quad(112 + mouseX/1.5, 56 + mouseY/1.5, 105 + mouseX/1.5, 62 + mouseY/1.5, 78 + mouseX/1.5, 62 + mouseY/1.5, 78 + mouseX/1.5, 58 + mouseY/1.5); triangle(84 + mouseX/1.5, 49 + mouseY/1.5, 70 + mouseX/1.5, 47 + mouseY/1.5, 79 + mouseX/1.5, 56 + mouseY/1.5); quad(130 + mouseX/1.5, 79 + mouseY/1.5, 130 + mouseX/1.5, 83 + mouseY/1.5, 73 + mouseX/1.5, 101 + mouseY/1.5, 78 + mouseX/1.5, 89 + mouseY/1.5); quad(102 + mouseX/1.5, 77 + mouseY/1.5, 75 + mouseX/1.5, 77 + mouseY/1.5, 75 + mouseX/1.5, 81 + mouseY/1.5, 83 + mouseX/1.5, 84 + mouseY/1.5); quad(133 + mouseX/1.5, 75 + mouseY/1.5, 129 + mouseX/1.5, 80 + mouseY/1.5, 80 + mouseX/1.5, 96 + mouseY/1.5, 87 + mouseX/1.5, 81 + mouseY/1.5); quad(80 + mouseX/1.5, 63 + mouseY/1.5, 74 + mouseX/1.5, 65 + mouseY/1.5, 74 + mouseX/1.5, 73 + mouseY/1.5, 80 + mouseX/1.5, 76 + mouseY/1.5); quad(142 + mouseX/1.5, 63 + mouseY/1.5, 113 + mouseX/1.5, 71 + mouseY/1.5, 106 + mouseX/1.5, 62 + mouseY/1.5, 108 + mouseX/1.5, 77 + mouseY/1.5); quad(83 + mouseX/1.5, 62 + mouseY/1.5, 83 + mouseX/1.5, 77 + mouseY/1.5, 80 + mouseX/1.5, 76 + mouseY/1.5, 80 + mouseX/1.5, 62 + mouseY/1.5); //wind shield fill(0, 0, 255, 20); quad(113 + mouseX/1.5, 55 + mouseY/1.5, 137 + mouseX/1.5, 60 + mouseY/1.5, 142 + mouseX/1.5, 64 + mouseY/1.5, 113 + mouseX/1.5, 70 + mouseY/1.5); triangle(113 + mouseX/1.5, 72 + mouseY/1.5, 106 + mouseX/1.5, 62 + mouseY/1.5, 112 + mouseX/1.5, 55 + mouseY/1.5); //fire orange stroke(255, 159, 33); fill(255, 159, 33); ellipse(66 + mouseX/1.5, 70 + mouseY/1.5, 11, 11); triangle(65 + mouseX/1.5, 64 + mouseY/1.5, 65 + mouseX/1.5, 75 + mouseY/1.5, 39 + mouseX/1.07/1.5, 70 + mouseY/1.5); //fire yellow stroke(255, 238, 34); fill(255, 238, 34); ellipse(64 + mouseX/1.5, 70 + mouseY/1.5, 9, 7); triangle(66 + mouseX/1.5, 73 + mouseY/1.5, 66 + mouseX/1.5, 66 + mouseY/1.5, 45 + mouseX/1.07/1.5, 70 + mouseY/1.5); //fading red screen fill(200, 0, 0, 0 + (mouseX / 10) + (mouseY / 7)); rect(0, 0, 400, 400); } // Help to find the exact position for points when making everything by simply displaying the mouse x and y coordinates when you click the mouse. /* void mousePressed() { println(mouseX + ", " + mouseY); } */