
Voici son code :
input geometriesyr16.mp ;
%------------------------------------------------------------------------
% Arbre 2x3
%------------------------------------------------------------------------
u:=1cm;
figure (-8u,-12u,10u,8u);
pair S,T[],U[];
numeric dx,dh,cr;
dx:=3;
dh:=1.5;
cr:=0.1;
for i:=1 upto 6:
U[i]:=(2*dx*u,-i*dh*u);
endfor
T[1]:= 0.5[U[1],U[3]] shifted(-dx*u,0);
T[2]:= 0.5[U[4],U[6]] shifted(-dx*u,0);
S:= 0.5[T[1],T[2]] shifted(-dx*u,0);
draw cr[S,T[1]]--(1-cr)[S,T[1]];
draw cr[S,T[2]]--(1-cr)[S,T[2]];
draw cr[T[1],U[1]]--(1-cr)[T[1],U[1]];
draw cr[T[1],U[2]]--(1-cr)[T[1],U[2]];
draw cr[T[1],U[3]]--(1-cr)[T[1],U[3]];
draw cr[T[2],U[4]]--(1-cr)[T[2],U[4]];
draw cr[T[2],U[5]]--(1-cr)[T[2],U[5]];
draw cr[T[2],U[6]]--(1-cr)[T[2],U[6]];
%----------- premier niveau
label(btex $E$ etex,T[1]);
label.ulft(btex $3 \over 4$ etex,0.6[S,T[1]]);
label(btex $\overline{E}$ etex,T[2]);
label.llft(btex $1 \over 4$ etex,0.6[S,T[2]]);
%----------- deuxième niveau supérieur
label(btex $A$ etex,U[1]);
label.ulft(btex $0,1$ etex,0.6[T[1],U[1]]);
label(btex $B$ etex,U[2]);
label.ulft(btex $0,4$ etex,0.6[T[1],U[2]]);
label(btex $C$ etex,U[3]);
label.llft(btex $0,5$ etex,0.6[T[1],U[3]]);
%----------- deuxième niveau inférieur
label(btex $A$ etex,U[4]);
label.ulft(btex $0,2$ etex,0.6[T[2],U[4]]);
label(btex $B$ etex,U[5]);
label.ulft(btex $0,1$ etex,0.6[T[2],U[5]]);
label(btex $C$ etex,U[6]);
label.llft(btex $0,7$ etex,0.6[T[2],U[6]]);
fin;
%-----------------------------------------------------------------------
%-----------------------------------------------------------------------
end ;