Walking arcs around circles, saving starting points for the next layer. Only drawing a third of a circle with a low opacity pen creates a nice sketched effect.
Log in to post a comment.
const size = 8; const sizeStep = 0.1; const iterations = 20; const turtle = new Turtle(); const positions = [{x:-size, y: 0, h: 180, r: size, d: 0}]; const savePos = (x, y, h, r, d) => { const xr = Math.round(x); const yr = Math.round(y); if (!positions.find(p => p.x==xr && p.y==yr)) { positions.splice(0, 0, {x: xr, y: yr, h, r, d}); } } const getLastPos = () => positions.pop(); Canvas.setpenopacity(0.1); function walk(i) { const lastPos = getLastPos(); if (lastPos.d > iterations) return false; turtle.penup(); turtle.goto(lastPos.x, lastPos.y); turtle.seth(lastPos.h+180); turtle.pendown(); for (let n = 0; n < 2; n++) { for (let angle = 0; angle < 60; angle++) { turtle.right(1); turtle.forward(lastPos.r*Math.PI/180); } savePos(turtle.x(), turtle.y(), turtle.h(), lastPos.r+sizeStep, lastPos.d+1); } return true; }