====== Daniel Ho's crazyDog.js ====== [[daniel-ho|by Daniel]] ===== about my crazyDog.js ===== This is my crazyDog.js. I've been working on it all semester. I think the hardest thing was that I need to make the loop function slower. For example, if I draw a dog, and loop it 10 times, it only need 5 second, but now i want it to draw ten dogs but use 10 second. The thing that im proud of is that I found out that if I let the website lag enough, I cant let the loop get slower(dont try it, it might let your computer crash....). The code for my artwork is below. The animation code is released under the [[https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html|GNU Lesser General Public License v2.1]]. ===== the code for my crazyDog.js ===== function setup() { createCanvas(1800,780); background(0) } function backgroundpatterns(x,y,bgColor){ for(let i = 0; i<174;i++){ fill(bgColor) ellipse(x,y,10) rect(x-3,y-3,5) x = x + 10 } } function backgroundpatterns2(x,y,bgColor){ for(let i = 0;i<60;i++){ fill(bgColor) backgroundpatterns(x,y,bgColor) y = y+10 } } class dog { constructor(x1,y1,num){ this.positionx = x1 this.fat1 = num this.positiony = y1 } draw(){ fill(color(random(0,255),random(0,255),random(0,255))) ellipse(65+this.positionx,90+this.positiony,50+this.fat1,50+this.fat1); square(75+this.positionx,34+this.positiony,10+this.fat1); square(35+this.positionx,34+this.positiony,10+this.fat1); square(40+this.positionx,40+this.positiony,40+this.fat1); ellipse(75+this.positionx,50+this.positiony,5+this.fat1); ellipse(45+this.positionx,50+this.positiony,5+this.fat1); line(45+this.positionx,60+this.positiony,50+this.positionx,65+this.positiony); line(50+this.positionx,65+this.positiony,70+this.positionx,65+this.positiony); line(70+this.positionx,65+this.positiony,75+this.positionx,60+this.positiony); ellipse(56+this.positionx,115+this.positiony,10+this.fat1,10+this.fat1); ellipse(80+this.positionx,110+this.positiony,10+this.fat1,10+this.fat1); triangle(50+this.positionx, 40+this.positiony, 60+this.positionx, 10+this.positiony, 70+this.positionx, 40+this.positiony);} } function loopdog(x) { let outputarray = []; for(let i = 0;i By: [[:daniel-ho|Daniel]]