SET WINDOW -1,1,-1,1 LET s=SQR(3) FOR d=0 TO 8 DRAW a(d) WITH SCALE(1/3^d,1/3^d)*SHIFT(-0.5,s/6) DRAW a(d) WITH SCALE(1/3^d,1/3^d)*SHIFT(-0.5,s/6)*ROTATE(2*PI/3) DRAW a(d) WITH SCALE(1/3^d,1/3^d)*SHIFT(-0.5,s/6)*ROTATE(4*PI/3) gsave STR$(d)&".gif" CLEAR NEXT d END EXTERNAL PICTURE a(d) LET a=0 PLOT LINES:0,0; LET x=1 LET y=0 PLOT LINES:x,y; FOR k=1 TO 4^d LET s=k DO LET s=s/2 IF NOT(s=INT(s)) THEN EXIT DO LET t=t+1 LOOP IF t/2=INT(t/2) THEN LET a=a+PI/3 ELSE LET a=a-2*PI/3 END IF LET t=0 LET x=x+COS(a) LET y=y+SIN(a) PLOT LINES:x,y; NEXT k END PICTURE