%Pyramide créee sur un demi-cercle. input geometriesyr16; figure(-10u,-10u,10u,10u); pair A,B,O,X,M,H,S,N,L,K; A=u*(1,1); B=u*(7,1); O=1/2[A,B]; X=(0,0); path cc,cd,ce,cf; cd=cercles(X,3cm); cc=cd yscaled 0.4; ce=(subpath(0,0.5*length cc) of cc) shifted O; label.llft(btex $A$ etex,A); label.lrt(btex $B$ etex,B); M=point(0.3*length ce) of ce; label.urt(btex $M$ etex,M); draw B--M--A dashed evenly; draw A--B; H=projection(M,A,B) shifted (1/10*(A-B)); draw codeperp(M,H,A,5); draw M--H dashed evenly; S-M=u*(0,4); draw A--S--B; draw S--M dashed evenly; draw codeperp(S,M,A,5); label.top(btex $S$ etex,S); label.bot(btex $H$ etex,H); N=(S--A) intersectionpoint ce; L=X shifted (xpart(N-O),0); K=cd intersectionpoint perpendiculaire(A,B,L); cf=((subpath(0,(angle(K-X)*(length cd))/360) of cd) yscaled 0.4) shifted O; draw cf dashed evenly; draw ((subpath((angle(K-X)*(length cd))/360,(length cd)/2) of cd) yscaled 0.4) shifted O; fin; end