Fichier islands.mp (figure 1) — Modifié le 2 Mars 2005 à 00 h 32
% lsystem ISLANDS.LS -- Thu Feb 13 00:54:56 CET 2003
%% Fichier de paramètres : ISLANDS.LS
% # islands
%
% ratio 6
% move f
% seed F+F+F+F
% rule F -> F+f-FF+F+FF+Ff+FF-f+FF-F-FF-Ff-FFF
% rule f -> ffffff
% leng 236
% delta 90
% x 118
% y -118
% theta 90
% iter 2
%% FIN du fichier
input tortue;
vardef deplace(expr a,b) =
enddef;
vardef F(expr n,m) =
if m>0:
F(n,m-1);
tourne(n,90);
f(n,m-1);
tourne(n,-90);
F(n,m-1);
F(n,m-1);
tourne(n,90);
F(n,m-1);
tourne(n,90);
F(n,m-1);
F(n,m-1);
tourne(n,90);
F(n,m-1);
f(n,m-1);
tourne(n,90);
F(n,m-1);
F(n,m-1);
tourne(n,-90);
f(n,m-1);
tourne(n,90);
F(n,m-1);
F(n,m-1);
tourne(n,-90);
F(n,m-1);
tourne(n,-90);
F(n,m-1);
F(n,m-1);
tourne(n,-90);
F(n,m-1);
f(n,m-1);
tourne(n,-90);
F(n,m-1);
F(n,m-1);
F(n,m-1);
else:
avance(n,longueur,trace);
fi
enddef;
vardef f(expr n,m) =
if m>0:
f(n,m-1);
f(n,m-1);
f(n,m-1);
f(n,m-1);
f(n,m-1);
f(n,m-1);
else:
avance(n,longueur,deplace);
fi
enddef;
vardef axiome(expr n,m) =
F(n,m);
tourne(n,90);
F(n,m);
tourne(n,90);
F(n,m);
tourne(n,90);
F(n,m);
enddef;
beginfig(1);
longueur = 236 / ( 6 ** 2 );
tortue(1,118,-118,90,1);
axiome(1,2);
endfig;
end