intersections
Log in to post a comment.
// You can find the Turtle API reference here: https://turtletoy.net/syntax Canvas.setpenopacity(0.35); // Global code will be evaluated once. const turtle = new Turtle(); turtle.penup(); const points = []; let d = 1; for (let j = 0; j < 12; j++) { let x = (-100 + Math.random() * 10) * d; let y = Math.random() * 50 - 25; let a = 0; for (let i = 0; i < 100; i++) { x += d * Math.cos(a) * 2; y += Math.sin(a) * 2; a += (Math.random() - Math.random()) * 0.1; points.push([x, y]); } d = -d; turtle.up(); } // The walk function will be called until it returns false. function walk(i) { const p0 = points[i]; for (let j = i + 1; j < points.length; j++) { const p1 = points[j]; const dx = p1[0] - p0[0]; const dy = p1[1] - p0[1]; if (Math.sqrt(dx * dx + dy * dy) < 10 && Math.random() > 0.5) { turtle.goto(p0); turtle.down(); turtle.goto(p1); turtle.up(); } } return i < points.length; }