size(7.5cm); pair pO=(0,0); int n=100; pen p1=.5bp+green, p2=palegreen, p3=blue, p4=paleyellow; transform t=scale(.4); pair[] z; z[1]=(1,0); for(int i=2; i<=n; ++i) { z[i]=rotate(90,z[i-1])*(z[i-1]+dir(z[i-1])); } for(int i=n; i>=2; --i) { real taux=1-i/(2*n); path ch=pO--z[i]--z[i-1]; fill(ch--cycle,taux*p2); draw(ch,p1); draw(t*format("$\sqrt{%i}$",i), ellipse,z[i],p3,Fill(p4)); } draw(pO--z[1],p1); draw(t*"$\sqrt1$", ellipse,z[1],p3,Fill(p4));