Circular conflagration
Log in to post a comment.
Canvas.setpenopacity(-0.05); const size = 130; const particles = 3000; const minParticleSize = 1; const maxParticleSize = 10; const minParticleSpeed = 0.5; const maxParticleSpeed = 10; const particleStep = 0.1; function walk(i) { const turtle = new Turtle(); const pSize = minParticleSize+(maxParticleSize-minParticleSize)*Math.random(); const pSpeed = minParticleSpeed+(maxParticleSpeed-minParticleSpeed)*Math.random(); turtle.penup(); turtle.goto(-maxParticleSize+2*maxParticleSize*Math.random(), -maxParticleSize+2*maxParticleSize*Math.random()); turtle.seth(i*Math.log10(i)); turtle.forward(i/particles*size); for (let j = 0; j < pSpeed; j+=particleStep) { const [x, y] = turtle.pos(); const h = turtle.h(); turtle.pendown(); turtle.circle(pSize, 180, 10); turtle.penup(); turtle.setpos(x, y); turtle.seth(h); turtle.forward(particleStep); } return i < particles; }