/* This program is isnpired by my love of shiny objects Title: Bling By Shannon Umerez -->991514126 >this program is a display of a diamond using a mix of different triangles >the x and y positions of the mouse affect the patterns of the backround creating different lighting in contrast to the diamnd >with a mouse click you can freeze the background - a light source will apprear parallel to the mouse position on the x axis revealing the sparkle of light shining off the diamond >engage with the mesmerizing illusion of visually appealling objects */ void setup(){ //size of window size(400,400); } void draw(){ frameRate(60); //set the background colour to white background(255); //BACKGROUND// //background shading circles that change colour with mouse movement fill(0); noStroke(); rect(0,0,400,400,mouseX); fill(66,73,73,mouseX); //1 ellipse(200,200,500,500); fill(81,90,90,mouseX);//2 ellipse(200,200,475,475); fill(97,106,107,mouseX);//3 ellipse(200,200,450,450); fill(112,123,124,mouseX);//4 ellipse(200,200,425,425); fill(127,140,141,mouseX);//5 ellipse(200,200,400,400); fill(153,163,164,mouseX);//6 ellipse(200,200,375,375); fill(178,186,187,mouseX);//7 ellipse(200,200,350,350); fill(204,209,209,mouseX);//8 ellipse(200,200,325,325); fill(229,232,244,mouseX);//9 ellipse(200,200,300,300); fill(255);//10 ellipse(200,200,mouseY,mouseY); fill(255); ellipse(200,200,275,275); //DIMOND BASE// //set triangle colour and stroke fill(153,255,255,255); stroke(255); strokeWeight(1); //top triangles of diamond triangle(60,140,80,140,120,80); //1 triangle(80,140,120,135,120,80); //2 triangle(120,80,120,135,160,80); //3 triangle(160,80,120,135,180,135); //5 triangle(160,80,180,135,200,80); //7 triangle(200,80,180,135,220,135); //8 triangle(200,80,220,135,240,80); //9 triangle(240,80,220,135,280,135); //10 triangle(280,80,240,80,280,135); //13 triangle(280,135,280,80,320,140); //14 triangle(320,140,340,140,280,80); //15 //bottom triangles triangle(60,140,80,140,165,290); //16 triangle(80,140,140,135,140,240); //17 triangle(140,238,140,135,180,280); //18 triangle(140,240,165,290,180,280); //19 triangle(180,280,140,135,200,135); //20 triangle(180,280,200,135,220,280); //21 triangle(200,135,220,280,260,135); //22 triangle(220,280,260,135,260,240); //23 triangle(260,135,260,240,320,140); //24 triangle(320,140,340,140,235,290); //25 triangle(220,280,235,290,262,240); //26 triangle(165,290,180,280,200,340); //27 triangle(180,280,220,280,200,340); //28 triangle(220,280,235,290,200,340); //29 //DEPTH triangles // //blue //top strokeWeight(0); fill(77,204,255,90); triangle(200,80,190,135,210,135); triangle(60,140,80,140,120,80);//1 triangle(80,140,95,136,120,80); //2 triangle(305,137,280,80,320,140); //14 triangle(320,140,340,140,280,80); //15 triangle(120,135,120,80,130,120); //16 triangle(280,135,280,80,270,120);//17 triangle(120,135,140,133,160,80);//18 triangle(240,80,260,135,280,135);//19 triangle(160,80,180,135,182,125);//20 triangle(220,135,217,125,240,80);//21 //bottom part of diamond triangle(320,140,310,138,260,240); triangle(315,140,340,140,335,145); triangle(330,140,340,140,290,210); triangle(260,135,250,135,220,280); triangle(220,280,200,135,196,160); triangle(180,280,200,135,204,160); triangle(180,280,140,135,150,135); triangle(80,140,90,139,140,240); triangle(60,140,70,140,165,290); triangle(60,140,80,140,65,145); triangle(260,240,220,280,230,287); triangle(140,240,173,285,180,280); triangle(200,340,180,280,190,280); triangle(200,340,210,280,220,280); triangle(167,290,175,283,200,340); triangle(224,285,235,290,200,340); } void mousePressed(){ //when the mouse is pressed the diamond changes to colours of light for one second //also changes background colour for reference frameRate(1); //yellow colour glare in Diamond fill(255,255,0,mouseX/400.0*175); triangle(180,135,178,125,200,80); triangle(220,135,225,120,200,80); triangle(258,142,260,135,205,135); triangle(200,135,202,142,235,135); triangle(143,145,140,135,170,135); triangle(170,135,199,142,200,135); triangle(265,120,270,80,280,80); triangle(280,110,280,100,305,137); triangle(126,120,120,80,130,80); triangle(93,138,120,100,120,110); //bottom of diamond triangle(70,145,75,140,165,290); triangle(325,140,330,145,240,280); triangle(150,250,150,240,175,260); triangle(223,260,250,250,250,240); triangle(220,280,215,240,240,180); triangle(180,280,185,240,160,180); //red colour in Diamond fill(239, 83, 80,mouseX/400.0*175); triangle(230,80,240,80,217,125); triangle(160,80,170,80,180,120); triangle(280,80,280,100,305,136); triangle(90,138,120,80,120,100); //bottom of diamond triangle(250,250,220,280,225,260); triangle(150,250,175,260,180,280); triangle(280,200,295,137,310,140); triangle(120,200,90, 140, 105,137); //green in diamond fill(0, 172, 193,mouseY/400.0*175); triangle(140,135,145,125,180,135); triangle(220,135,255,125,260,135); //bottom of diamond triangle(250,250,260,240,260,135); triangle(140,240,140,135,150,250); triangle(213,240,218,260,200,280); triangle(200,280,182,260,188,240); //DRAW LIGHT// fill(255,255,30); ellipse(40+mouseX,40+mouseY/40,30,30); fill(255,255,0,100); ellipse(40+mouseX,40+mouseY/40,50,50); fill(174,214,241,60); ellipse(200+mouseX,200+mouseY,20,20); // SPARKLES// fill(266); strokeWeight(2); //1 line(120,75,120,85); line(115,80,125,80); line(115,75,125,85); //2 line(160,170,160,190); line(170,170,150,190); line(150,180,170,180); //3 line(247,129,252,147); line(236,131,260,142); line(255,130,245,145); }