Different every time!

Log in to post a comment.

Canvas.setpenopacity(.2) particles = [] for (i = 0; i < 100; i++) { particles.push( { turtle: new Turtle(), speed:Math.random() * 2 - 1, angle:Math.random() * 2 - 1 }) } function walk(i) { mean = [0, 0] for (particle of particles) { turtle = particle.turtle lerpedPos = lerp2D(turtle.position(), mean, 0.2) turtle.goto(lerpedPos) turtle.forward(particle.speed) turtle.right(particle.angle) mean[0] = mean[0]+turtle.position()[0] mean[1] = mean[1]+turtle.position()[1] } mean[0] /= particles.length mean[1] /= particles.length return i < 2000 } function lerp2D(a, b, amount) { newPos = [] newPos[0] = a[0] * (1 - amount) + b[0] * amount newPos[1] = a[1] * (1 - amount) + b[1] * amount return newPos }

https://turtletoy.net/turtle/f1ae9f0021

t

walk

Warning: depending on the total number of frames, the export can take several minutes!