input geometriesyr16;

figure(0,0,10u,10u);
pair A,B,C,D,E,F,G,H,S,O,I;
H=u*(1,1);nomme.lft(H);
E=u*(3,0);nomme.llft(E);
A=u*(3,1.5);nomme.llft(A);
F=u*(7,0.15);nomme.rt(F);
D=H shifted(A-E);nomme.lft(D);
B=F shifted(A-E);nomme.rt(B);
G=F shifted(H-E);nomme.bot(G);
C=G shifted(A-E);nomme.urt(C);
I=1/2[H,F];nomme.bot(I);
S=I shifted(0,5u);nomme.top(S);
O=I shifted(A-E);nomme.ulft(O);
draw H--E--F--B--S--D--cycle;
draw D--A--S;
draw E--A--B;
draw D--C--S dashed evenly;
draw H--G--C--B dashed evenly;
draw H--F--G--E dashed evenly;
draw A--C dashed evenly;
draw D--B dashed evenly;
draw S--I dashed evenly;
fin;

figureespace(-10u,-10u,10u,10u);
Initialisation(5,-22,20,500);
color A,B,C,D,E,F,G,H,S,O,I;
H=(0,0,0);
E-H=(0.75,0,0);
F-E=(0,1,0);
F-G=E-H;
D-H=(0,0,0.5);
A-E=D-H;
B-F=D-H;
C-G=D-H;
I=iso(E,G);
O-I=D-H;
S-O=(0,0,1);
NbS:=9;
Sommet1:=H;
Sommet2:=E;
Sommet3:=F;
Sommet4:=G;
Sommet5:=D;
Sommet6:=A;
Sommet7:=B;
Sommet8:=C;
Sommet9:=S;
NF:=9;
Fc[100]:=4;Fc[101]:=1;Fc[102]:=4;Fc[103]:=3;Fc[104]:=2;
Fc[200]:=4;Fc[201]:=1;Fc[202]:=5;Fc[203]:=8;Fc[204]:=4;
Fc[300]:=4;Fc[301]:=4;Fc[302]:=8;Fc[303]:=7;Fc[304]:=3;
Fc[400]:=3;Fc[401]:=5;Fc[402]:=9;Fc[403]:=8;
Fc[500]:=3;Fc[501]:=8;Fc[502]:=9;Fc[503]:=7;
Fc[600]:=4;Fc[601]:=1;Fc[602]:=2;Fc[603]:=6;Fc[604]:=5;
Fc[700]:=4;Fc[701]:=2;Fc[702]:=3;Fc[703]:=7;Fc[704]:=6;
Fc[800]:=3;Fc[801]:=5;Fc[802]:=6;Fc[803]:=9;
Fc[900]:=3;Fc[901]:=6;Fc[902]:=7;Fc[903]:=9;
DessineObjet;
drawoptions(dashed evenly);
trace segment(H,F);
trace segment(E,G);
trace segment(D,B);
trace segment(A,C);
trace segment(S,I);
drawoptions();
nomme.lft(H);
nomme.llft(E);
nomme.llft(A);
nomme.rt(F);
nomme.lft(D);
nomme.rt(B);
nomme.bot(G);
nomme.urt(C);
nomme.bot(I);
nomme.top(S);
nomme.ulft(O);
finespace;
figure(-10u,-10u,15u,15u);
unit=0.25*cm;
z0=(0,0);
pair O,I,M,B,J;
O=z0;nomme.lft(O);
z1=(0,9*unit);
I=z1;nomme.lft(I);
path cb,cc,cd,ce;
cb=cercles(O,12*unit);
cc=cercles(O,(12+-+9)*unit);
cd=cc yscaled 0.15 shifted z1;
ce=cb yscaled 0.15 shifted z0;
numeric a;
a=length cd;
trace subpath(0,(a/2)) of ce dashed evenly;
trace subpath((a/2),a) of ce;
trace cd;
z2=point (0) of cd;
M=z2;nomme.urt(M);
B=2[M,I];
trace arccercle(B,M,O);
z3=cd intersectionpoint (O--I);
trace chemin(z3,z0,z2) dashed evenly;
trace chemin(z3,z1,z2);
trace codeperp(M,I,O,5);
J=(0,-12*unit);
trace cotation(I,J,13*unit,2mm, btex $h$ etex); 
fin;
end